image.png
皎__皎关注
2021.04.08 11:10:13字数 929阅读 117

1.提交文件快捷键

add指令:Ctrl+Alt+A
commit指令: Ctrl+K
push指令: Ctrl+Shift+K

2.忽略配置文件(.gitignore)立即生效

清除全局缓存:git rm -f -r —cached .
ADD后撤销:git reset HEAD -filename

3.打tag

查看本地tag:git tag
查看附加信息:git show v1.0
创建tag:git tag -a v1.0 -m ‘release 1.2’
删除本地tag:git tag -d v1.0
AndroidStudio中简单打tag如下图所示,选择需要的commit记录,右键即可。

image.png

Statsh Changes是暂存,UnStash Changes是恢复。UnStash需要说明下

—Apply Stash 是将当前stash的内容应用到工作目录
—Pop stash 勾选该选项,按钮变为“Pop Stash”,将当前stash的内容应用到工作目录,同时将该内容出栈,即删除
—Drop 从堆栈中移除某个指定的stash
—Clear 清除堆栈中的所有内容有时你提交过代码之后,发现一个地方改错了,下次提交时不想保留上一次的记录;或者你上一次的commit message的描述有误;或者忘记add文件,你又不想增加一条无用的记录,这时候你可以使用接下来的这个命令:git commit —amend。AndroidStudio使用如下:
“New Tag” 是简单创建Tag,同时会显示已经存在的tag,可以选择Delete删除,比如这里的‘A2.4.6.10290’。
如果需要特别说明Message,则如下图所示:
image.png
image.png

4.查看记录

查看日志:git log
查看操作记录:git reflog
退出: :wq,回车

5.回滚

  • 没有push
    git reset —soft | —mixed | —hard
    —soft:保留源码,只回退commit信息到某个版本,不涉及index的回退。如果还需要提交,直接commit即可。
    —mixed:会保留源码,只是将git commit和index的信息回退到了某个版本。(git reset默认的就是—mixed模式,即git reset等价于git reset —mixed)
    —hard:源码也会回退到某个版本,commit和index都会回退到某个版本。(注意这种方式是会改变本地代码仓库源码)
  • 已经push
    对于已经把代码push到线上仓库,你回退本地代码也想同时回退线上代码,回滚到某个指定的版本,让线上、线下代码保持一致,用revert。git revert用一个新提交来消除一个历史提交所做的任何修改,不会像reset造成冲突。
    在AndroidStudio中回滚操作如下图,可以选中想要回滚的commit,右键即可弹出reset和revert选择框。
    image.png

    6.代码暂存

    git stash命令的作用就是将目前还不想提交的但是已经修改的内容进行保存至堆栈中,后续可以在某个分支上恢复出堆栈中的内容。比如你正在dev分支上开发某个项目,这时项目中出现一个bug,需要紧急修复,但是正在开发的内容只是完成一半,还不想提交,这时可以用git stash命令将修改的内容保存至堆栈区,然后顺利切换到hotfix分支进行bug修复,修复完成后,再次切回到dev分支,从堆栈中恢复刚刚保存的内容。
    特别说明:stash中的内容不仅仅可以恢复到原先开发的分支,也可以恢复到其他任意指定的分支上。

image.png
image.png

7.修改提交记录

image.png
勾选“Amend commit”,然后提交即可。