初始化git(你们即将成为git的子民)
1git init
提交你的修改
因为git init不会创建master分支,除非commit一些东西。
1git commit -m "commit message"
修改提交的message
难免手一抖的情况将提交的message打错了,可以通过amend方式修改
1git commit --amend
合并提交的message
提交了几次突然发现其中几个提交可以合并为一个。
1git reset --soft 你想合并的commit的前一个值
取消这次提交
纠结的事来了,你好不容易合并了几个commit,但产品说header和footer的样式不用调整了。。。(好伤)
1git reset --hard 你想取消的commit的前一个值
还原这次提交
领导说header和footer的设计稿挺好的,否定了之前产品的说法。(我擦)
1git reset --hard 你想还原的commit的值
合并分支(git rebase)
以下情况都需要用到git rebase
- 我为了开发方便自己建了一个新分支,并且做了一些提交。当合并到master时我希望不显示这个分支(个人开发分支,跟团队没关系,不重要),就好像在最新的master做了一些提交一样。
- 我和同事在本地master修改了一些东西,他已经提交到了远程服务器的master上。我pull的时候也希望就在master分支上,而不是有个merge的提交。所以pull的时候最好使用git pull -r。
123git rebase 分支git pull --rebase // git pull -rgit rebase --continue //解决冲突后,add到index区然后执行此命令即可
合并分支(git merge)
以下情况都需要用到git merge
- 需要新建个分支来处理bug或者新加一个功能,通过git merge可以清楚地看到分支的合并情况。
123git merge 分支git pull // git pull -rgit commit //如果有冲突,解决并add后直接输入此命令,然后修改merge的提交信息
忽略某些文件或文件夹
- 只是自己本地测试的代码,并不希望提交到master上
- 编辑器产生的一些文件,和项目无关
- 还有其它情况等等