git 版本管理知识汇总
正文
引入git
版本控制之后,文件颜色会有变化:
- 红褐色:创建之后没有
add
,没提交,不在版本控制范围之内,这时候文件是红褐色的,需要先add
文件; - 绿色:
add
之后是文件绿色的,没有提交(commit
); - 蓝色:原本有一个文件,改动过后没有提交(
commit
)是蓝色的,提交之后,变成正常颜色。
git
使用的一点点心得:
1、commit
之前review
一下,检查代码是否有错误、是否规范;
2、平时开发在本地test
分支开发,不要跑到master
分支开发;
git revert
git revert
撤销某次操作,此次操作之前和之后的commit
和history
都会保留,并且把这次撤销,作为一次最新的提交。
git revert HEAD
撤销前一次 commitgit revert HEAD^
撤销前前一次 commitgit revert commit
(比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进行保存。
git revert
是提交一个新的版本,将需要revert
的版本内容再反向修改回去,版本会递增,不影响之前提交的内容。
git revert 和 git reset 的区别
-
git revert
是用一次新的commit
回滚之前的commit
,git reset
是直接删除指定的commit
。 -
在回滚这一操作上看,效果差不多。但是在日后继续
merge
以前的老版本时有区别。因为git revert
是用一次逆向的commit
“中和”之前的提交,因此日后合并老的branch
时,导致这部分改变不会再次出现,但是git reset
是之间把某些commit
在某个branch
上删除,因而和老的branch
再次merge
时,这些被回滚的commit
应该还会被引入。 -
git reset
是把HEAD
向后移动了一下,而git revert
是HEAD
继续前进,只是新的commit
的内容和要revert
的内容正好相反,能够抵消要被revert
的内容。
Webstorm操作git
- 项目根目录 ->
Git
->Repository
->Brabches
- 选择要切换的远程,点击
Checkout As
即可
3. 下次提交到远程服务器时,发现该分支就已经更改。
GIT命令实现合并分支
- 查看分支
git branch -a(查看所有分支:本地分支白色,当前分支绿色,远程分支红色)
注 :q退出当前记录列表。
2. .git
同文件夹下,右键进入git bash
命令行,然后进入要合并的分支(如develop分支合并到release,则进入release目录)
git checkout release(切换分支)
git pull(拉去最新的代码)
- 合并分支
git merge --no-ff develop(因为develop在上一步是白色的,不建议直接合并远程分支)
- 查看状态
git status(这里可以看到是否有冲突:conflict,或者修改:modify)
-
若有冲突,通过IDE/编辑器解决。
-
解决后,提交至暂存区。
git add .(最后是空格+点,不能少,这里是直接全部放到暂存)
- 提交
git commit -m "说点什么"(-m后面的是本次提交的信息,如果不填,直接使用git commit,系统会自动生成)
8、推送(常常会忽略,导致查看不到推送信息)
git push(已提交的变动推送至远程)
拓展阅读
- 点赞
- 收藏
- 关注作者
评论(0)