git 学习笔记--方便查阅

版权声明:出于感谢(如果有收获)或对知识的尊重,未经允许禁止转载 https://blog.csdn.net/bendan50/article/details/81319819

写给本文网友读者的话:如果你之前不了解git,那么这文章不适合你,因为它不系统,没有讲解,只是单纯的而且杂乱的记录,连整理都谈不上。我之前在网上搜索的时候,好像(应该)也和我这篇文章一样,“这MD都写了些啥啊”——内心的旁白。如果你之前已经了解git,那么这文章适合你,通常你可以快速的找到你想要的东西。

对于我而言,这只是一个学习的笔记。不用“参考资料”的字眼,改为“学习资料”,链接如下:

https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000


git status : 查看状态,当前分支下被修改的文件

git add <file>  :添加指定的文件,用来进行提交的。

git diff <file> :对比文件

git commit -m  : "此次提交内容的日志,支持中文"    //提交至本地库(当前分支)

连接VPN后,进行提交至远程库

git remote update -p  : 更新远程所有分支,其结果会显示所有分支

git rebase ***  :  其中***为需要合并到的分支名(上一步操作会显示,所以复制想要的分支即可)。把本地未push的分叉提交历史整理
成直线;使得在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。

git push origin crsh  : 提交至远程分支(这种情况是确保没有冲突的情况,可以直接提交,否则需要先拉远程库)

上步如果失败,则需要git pull 从远程拉下试图合并,如果有冲突,则解决冲突,并在本地提交。
如果git pull 提示 no tracking information ,则说明本地分支与远程分支没有创建连接,用命令:
git branch --set-upstream-to <branch-name> origin/<branch-name>

----------至此命令操作完成----------下面为网页操作--------------

记得选择相关的分支进行合并

git log --pretty=oneline :  查看提交日志,后面的参数可以去掉,加上后显示信息少,但格式规整。

版本回退: HEAD表示当前版本;  git reset --hard HEAD^ :回退至上一个版本。

使用命令git reset --hard commit_id。穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。


git checkout --fileName :撤销修改到最近一次git commit 或 git add 时的状态。 “--”很重要,如果没有就变成了切换分支的命令了

如果想撤销的文件已经git add到暂存区了,使用: 【git reset HEAD fileName】来退到工作区,然后使用checkout命令撤销。

git rm fileName;  git commit -m "" :将文件从版本库中删除。 git checkout -- fileName恢复(在commit之前有效)

git clone 地址  : 从远程库克隆一份至本地;git支持多种协议  https ssh 


git checkout -b crsh = git branch crsh; git checkout crsh  : 其中crsh为分支名。创建并切换至分支

git branch : 查看当前分支(前面标有星号 * ),会列出所有分支

git merge crsh : 把分支crsh合并到master分支上

git merge --no-ff -m "merge with no-ff" crsh : 把分支crsh以非Fast forward模式合并到master分支上;合并后的历史有分支,能看出
来曾经做过合并

git branch -d crsh : 把crsh分支删除    -D :是强行删除 ;即-d不行的话,用-D

解决冲突:把合并失败的文件手动编辑为我们希望的内容,再提交

git log --graph : 查看分支合并图

git stash : 保存工作现场(工作途中突然需要解决BUG时可用)

git stash list : 查看已保存的工作现场

git stash pop : 恢复之前保存的工作现场,同时把stash内容删除;git stash apply :也是恢复,但需要用git stash drop来删除stash内


git tag v1.0 : 打标签,标签为v1.0  
git tag : 查看所有标签
git show v1.0  : 查看标签内容
git tag -a tagname -m "" ID  : -a指定标签名, -m指定说明文字  
git tag -d v1.0  : 删除标签(本地)
git push origin :refs/tags/<tagname>  : 删除标签(远程)
git push origin <tagname>  推送一个本地标签
【标签总是与某个commit挂钩,如果这个commit既出现在master分支,又出现在dev分支,则这两个分支都可以看到这个标签】

查找commit的id : git log --pretty=oneline --abbrev-commit


 

猜你喜欢

转载自blog.csdn.net/bendan50/article/details/81319819