git 学习总结

初始化

git init 

添加新单位

 git add .

提交单位

git commit

查看git状态

git status

查看提交历史

git log 

回到上一个版本 HEAD^ 上上个版本是HEAD^^ ,前十个版本是HEAD~10

git reset --hard HEAD^

如果后悔,还想回到刚才的最新版本(只需要输入几位就好了,git会自动去找)

git reset --hard 345435

如果命令行已经关闭了, 则可以输入以下命令查看

git reflog

如果想放弃本次add 和commit的内容,回到上一个add 或者commit的状态

git checkout -- a.txt

如果修改已经add到了stage , 则先将信息拉回工作区,再从工作区撤销修改

git reset HEAD a.txt

如果你已经发布到了本地版本库, 还可以通过前面的版本回退回到过去..


删除

rm c.txt

本地已经删除,但是git没有更新,所以
1.确认删除

git rm c.txt
git commit -m 'remove c'

2.取消删除 , 可以还原

git checkout -- c.txt

git 工作区/暂存区概念详见
这里写图片描述
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013745374151782eb658c5a5ca454eaa451661275886c6000

工作区如果有更改, 一定要先git add到缓存区 , 保证缓存区最新之后在git commit .


远程库

要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;


创建新分支,并切换

git checkout -b dev
其实相当于两句代码,创建:git branch dev 切换:git checkout dev

查看当前分支,和所有分支情况

git branch

回到master分支, 合并dev分支的最新修改内容

git merge dev

删除分支

git branch -d dev

分支冲突

这里写图片描述

git merge 出现冲突之后, 可以找到冲突的文件,进行修改 ,修改之后再重新add commit , 后面变为下图所示
这里写图片描述


加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

git merge --no-ff -m "merge with no-ff" dev

这里写图片描述


bug 分支

手头工作做到一半,需要去改一个bug,切换到一个bug分支
现在dev分支提交缓存

git stash

在切换到bug分支,解决完毕bug以后,切换到dev

查看当前的缓存目录

git stash list

选择以何种方式应用缓存
1.git stash apply 此方式恢复后stash的内容不会删除 需要使用 git stash drop 来手动删除
2.git stash pop 此方式恢复之后,stash的内容会自动删除


多人模式下的分支开发和推送远端:

首先,可以试图用git push origin branch-name推送自己的修改;

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name

这就是多人协作的工作模式,一旦熟悉了,就非常简单。


commit 的版本号码太过于无序 , 可以使用tag标签来管理 一个tag标签对应一个标记~

给当前版本打标记

$ git tag v1.0

对过去的commit号码6224937打标签

git tag v0.9 6224937

显示标签对应的信息

 git show v0.9

标签部分未完待续…..

猜你喜欢

转载自blog.csdn.net/weixin_40821790/article/details/78752392