git 的使用方法以及要注意的地方~/git stash的使用

1.假如你在一个分支,非master分支,例如avatar,在你修改之前一定要 get merge master,git pull,再开始写代码.如果改好了,也要先git merge master,git pull,再提交分支的内容

2.如果提交代码?如果你在master分支,记得在提交之前一定要先pull

git pull

git add -A

git commit -m "这里写你更改了的东西就可以"

git push 

3.如果你在分支avatar上,有人在master上提交了代码你想更新master上的东西到自己的分支怎么做?

首先你要提交自己分支的东西,

git add -A

git commit -m "这里写你更改了的东西就可以"

git push origin avatar

现在你切到master 分支上:

git checkout master

git pull

然后再切到avatar的分支上进行merge

git checkout avatar 

git merge master

再git pull一下写你的代码,每次在分支上写东西 ,记得先merge master上的东西

4.please enter a commit to explain why this merge is neccessary.

git 的使用方法以及要注意的地方~/git stash的使用

先输入 i

再 输入Esc

最后输入:wq  按enter退出.

不要被这个吓到,只是问你为什么要合并,其实不用解释,直接退出就好了,这里要注意的是,必须你的输入法是英文的,不然一直都没有办法打出这个:wq

5.怎么删本地分支和远程分支?

1.首先你确保自己在master分支上,git branch -a

你就可以看到远程和本地所有的分支了.

2.删除本地的分支   git branch -d avatar   

这里avatar就是我的一个分支,当然删除本地的有可能说,你本地没有这个分支,也是很有可能的,你不用管他~

3.删除远程的分支   git push origin --delete avatar

这就是删除了远程的啦~

4.最后你可以查看一下,你的要删的分支是不是删掉了  git branch -a

git 就用到这么多了~还有一个stash ~~~有用到的宝宝帮我补充下哦-_-

 6.no changes added to commit

git 的使用方法以及要注意的地方~/git stash的使用

遇到这个我是试了很多网上的例子,但是再次提交还是会出现这句话.

为什么出现这个,我的:因为在master上有人建了一个和我分支一样的文件,我把master上的合并过来就这样了.所以我把那个新加的文件先复制保存起来到其他地方,再删除项目里面的,在提交,再把这个文件放到项目里,再次提交就好了

7.error: The branch 'chooseDetail' is not fully merged.

If you are sure you want to delete it, run 'git branch -D chooseDetail'.

git 的使用方法以及要注意的地方~/git stash的使用

意思是你在分支上修改的东西还没有合并到master,要不要删除,当你那条分支上的东西确实没有用了,很久了,你又在别的分支去做这个修改的时候,你可以删  

git branch -D chooseDetail就可以了

8.error: refs/heads/awardIssue does not point to a valid object!

等待解决

git 的使用方法以及要注意的地方~/git stash的使用

 9每次提前之前一定要拉代码,合并之后一定要提交

10 当gitlab上有revert的代码,怎么把它放出来?

有种情况就是同事的代码要急着上线 我的也上了测试,但是我的还没有测,所以同事先在我的commit上revert一下

git 的使用方法以及要注意的地方~/git stash的使用

所以等我需要的时候放出来这个revert的代码

直接用 git revert + 某个commit(这个revert掉的commit)

11 git stash 

git stash 是将本地的代码存储到暂存区,和分支一点关系都没有,

假如我在a分支上git add .  /git stash 了代码aa,我在b分支上git add ./git stash了代码段bb

这时候我切到a分支,进行git stash pop,是在a分支上拿到了代码段bb,

这明显不是我们想要的结果,也说明了不管你做了多少次存储的工作,git stash pop永远都是拉取最新的一次存储,

如果你想在切到a分支上拿到aa的代码段怎么操作,git stash list/git stash apply "stash@{n}",这里要注意的是释放指定暂存区的代码,在mac上是执行 git stash list/git stash apply stash@{n},

而在windows上执行git stash list/git stash apply "stash@{n}",windows需要双引号.

存储:

git add .

git stash

释放最新一次

git stash pop

释放指定:

git stash list

git stash apply "stash@{n}"或者git stash apply stash@{n}

 

12 怎么切到某次commit ?

先去gitlab找到commit id , git checkout  4c90ffda48a3c4a4ec56511bce3561a0a69a9214

 

好好生活-_-