一、简介
1. Git是目前最先进的分布式版本控制系统。
2. SVN集中式版本控制系统,版本库是集中存放在中央服务器;集中式版本控制系统最大的毛病就是必须联网才能工作。
3. 分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库。
二、常用命令
1. git clone
2. git status -s
3. git remote -v
4. git branch
5. git push origin Release_2
6. git pull
7. git checkout src/test/..../xx.java
8. git log --author=zhangsan -2
9. git log --grep=zhangsan
10. git checkout master
三、常见问题
1. 本地分支git pull出现少量冲突,可抛弃本地的修改
* 不建议这样做,但是如果你本地修改不大,或者自己有一份备份留存,可以直接用线上最新版本覆盖到本地,操作步骤命令:
git fetch --all
git reset --hard origin/master
git fetch
2. git撤销commit,但未git push的命令
git log 找到想要撤销的id
git reset --hard id 完成撤销,同时将代码恢复到前一commit_id 对应的版本
3. 回退到指定commit版本
1.git log 确定回退的版本分支id
2.git reset --hard 34f2ad37e2fb393cb555a8ba318af33f98c73df9
2.1 解除git branch protected(设置--protected branches--删除)
3.git push -f origin master
3.1 重新添加分支保护(设置--protected branches--protected)
四、SourceTree
1. 拥有可视化界面的项目版本控制软件,适用于git项目管理
2. 免密码输入:git config --global credential.helper osxkeychain
3. 冲突解决:从 <<<<<<< HEAD 到 ======= 那行之间的就是当前分支上的内容。从 ======= 到 >>>>>>> 你的传入分支名之间的,就是传入分支上的内容