1.生成git秘钥
cd ~/.ssh
ssh-keygen
更换秘钥后需要使用ssh-add
cat ~/.ssh/id_rsa.pub --查看公钥
2.常用git命令
git branch 查看分支
git status 查看状态
git log 查看提交日志
git commit --amend 第二次提交
git push origin HEAD:refs/for/master 推送代码
git diff区别
git add添加
git commit提交
git reset --hard HEAD~1 回退提交1次
3.多次提交更改前面提交内容
修改某次提交
git rebase -i HEAD~3
将上一步弹出的命令行中的第二个提交的pick 修改为edit,如想删除提交则改为drop
根据Review的结果修改代码
git commit --amend (注意不要修改changID)
git rebase --continue
repo upload . (修复第二次提交)
删除某次提交:
git rebase -i 指定提交的前一次提交
将上一步弹出的命令行中的第二个提交的pick改为drop
保存
4.切换分支
git branch 查看本地分支
git branch -a 查看全部分支
git checkout -b bugfix-cp-final remotes/origin/bugfix-cp-final 切换分支(本地分支 远程分支)
git checkout master 切换分支
git pull --rebase 拉取代码
git reset . 取消添加
git push origin HEAD:refs/for/bugfix-cp-final 提交
5.打补丁
git format-patch -1 添加补丁
git apply 0001-Creation-and-display-of-region.patch 应用补丁
git am 0001-Creation-and-display-of-region.patch 解决补丁冲突
git apply --reject 0001-Creation-and-display-of-region.patch
git apply --reject 0001-Update-usage-tips.patch
6.撤销git commit --amend
git reflog 查看logid
git reset logid 回退
7.将dev分支合并到master分支
在master分支执行 git merge remotes/origin/dev --no-ff
查看两个分支的差异 git diff master dev
8.撤销添加文件
git reset HEAD .
git reset HEAD -filename
9.忽略某个文件
git update-index --assume-unchanged 文件名
取消忽略
git update-index --no-assume-unchanged 文件名