Git学习笔记

# Git学习笔记

[学习资料](http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)

git init
git status
git log 可以查看提交历史
git reset --hard commit_id
git reflog查看命令历史

git add . 工作区 -> 暂存区

git commit -m '*' 暂存区 -> 分支上

git checkout -- '*' 撤销工作区的操作

git reset HEAD * 可以把【暂存区】的修改撤销掉

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。


git clone git@XX
git cloen http@xxx

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>


git push origin --delete * 删除远程分支

用git log --graph命令可以看到分支合并图。


开发一个新feature,最好新建一个分支;

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

git tag -a <tagname> -m "blablabla..."可以指定标签信息;

git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;

命令git tag可以查看所有标签。

git push origin v1.0 提交tag


命令git push origin <tagname>可以推送一个本地标签;

命令git push origin --tags可以推送全部未推送过的本地标签;

命令git tag -d <tagname>可以删除一个本地标签;

命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

git update-index --assume-unchanged <file>.


git rm --cached -r test_suite/test_.py

原文地址:https://www.cnblogs.com/sunshine2016/p/5732637.html