一,常见命令整理
1)git clone xxx:将远程git分支文件下载到本地
2)git checkout dev:切换到dev分支
3)git branch:查看当前的git分支状态
4)git add . :将文件夹下的文件夹及文件添加到git的暂存区
5)git commit -m "备注信息在这填写":将本地的缓存及未提交文件提交到版本库
6)git push:将版本库的内容提交到远程分支
7)git reset --hard HEAD^:回退到版本库的上一个版本
8)git reset --hard 版本号:回退到版本库的指定版本号
9)git status:可以显示分支冲突时冲突在哪里
10)git fetch:将远程分支拉取到版本库
说明:git pull和git fetch的区别
11)git merge dev:合并dev的内容到本地来,如果是忽略分支,则是合并当前版本的内容到本地来
12)git diff:查看开发库的代码冲突文件(查看文件后,需要手动合并<<<<<< ============>>>>>>>>>>中的代码内容)
13)git log:查看commit日志()
说明:查看git log中,对应commit的哈希值,结合git reset --hard commit_id,可以回退到对应的commit的内容
14)git reset --mixed:不带任何参数的git reset,即会回退到某个版本,只保留源码,回退commit和index(暂存库)信息
15)git reset --soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级,如果还要提交,直接commit即可
16)git reset --hard:彻底回退到上一个版本(后加版本号可以回退到固定版本),本地的源码也会变为上一个版本内容
二,git stash暂存命令:
(1)git stash save "save message" : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。
(2)git stash list :查看stash了哪些存储
(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}
(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p
(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
(7)git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储
(8)git stash clear :删除所有缓存的stash
三,在Git-Fork-请求PR
1. 在github页面上, 点击fork按钮, 将B的项目拷贝一份到自己的代码仓库中.
2. 克隆自己的代码仓库到本地.
$ git clone -b feature/1.0 [https://github.com/A/A.git](https://link.jianshu.com?t=https%3A%2F%2Fgithub.com%2FA%2FA.git)
3. 将源项目与自己的仓库进行关联(upstream 是上游仓库的别名,别名随意命名)
$ git remote add upstream [https://github.com/B/B.git](源仓库地址)
4. 列出当前为复刻配置的远程仓库.
$ git remote -v
$ git branch -a -vv 列出全部分支
5. 暂存已经编辑的目录和文件.
$ git add .
$ git stash
$ git push
6. 拉取B仓库的新代码
$ git fetch upstream
7. 将源仓库新的部分合并到A的代码仓库中, 使自己的的代码仓库变成最新的代码.
$ git merge upstream/main
8. 查看分支,确保在自己的本地分支上
$ git branch
9. 如果不在本地分支,则执行 git checkout master ,如果在则忽略此步骤
10. 将刚刚暂存的代码合并到现在最新的代码中.
$ git stash pop
$ git stash apply stash@{0} (同时删除stash )
11. 本地提交代码.
$ git add .
$ git commit -m 提交代码的注释信息
12. 将源仓库新分支推送到自己的仓库,并确定上传流为自己的仓库
$ git push origin develop:develop -u
13. 在A的github仓库页面上,点击pull request向B发起PR请求.
如上是第一次进行fork、克隆代码、创建关联、修改代码提交等操作
当再次本地修改代码提交时,执行步骤6-11即可
四,只设置拉取仓库和提交仓库:
1. git remote set-url origin 原始仓库
2. git remote set-url --push origin 自己的仓库
添加远程仓库:
1. git init
2. git remote add origin 远程仓库
git 合并忽略文件配置
1. 分支A 合并到 分支B,忽略某个文件
2. 在A分支创建.gitattributes文件,并且在文件中配置忽略文件名
./Dockerfile merge=ours
3. 回到要合并到的分支master, 执行命令:
git config --global merge.ours.driver true
git merge dev
五,git 账号密码配置:
1.设置git用户名、密码、邮箱的配置(全局配置)
查看配置:git config --list
本地配置:
git config user.name 用户名
git config user.password 密码
git config user.email 邮箱
全局配置:
git config --global user.name 用户名
git config --global user.password 密码
git config --global user.email 邮箱
2、执行保存账号命令
保存本地仓库的账号(推荐)
git config --local credential.helper store
保存git全局账号
git config --global credential.helper store
3,清除掉缓存在git中的用户名和密码
git credential-manager uninstall 和 git config --system --unset credential.helper
mac安装homebrewd地址?
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
node版本管理工具N
npm i n -g
node.js旧版本下载:
http://nodejs.org/dist/