《JAVA从零架构》第2天—分布式版本控制系统-Git

1、Git 对比SVN

Git 跟 SVN一样有自己的集中式版本库,但是Git 更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库上chect out代码后会在本地克隆一份版本库。

在Git 中多数操作只需要访问本地文件和资源,不必联网就可以看到所有的历史版本记录,而SVN 却需要联网

SVN 断开网络无法commit代码,但是Git 可以先commit到本地仓库

Git 克隆项目速度要高于SVN

Git 上的分支远比SVN强大

2、GIt常用命令

无论是Eclipse 集成 EGit 插件 还是客户端工具TortoiseGit,无非也是通过图形化的工具执行了Git命令,这里我们学习一些常用的Git命令

gitpull --rebase origin master //强制把远程库的代码跟新到当前分支上面

git fetch //把远程库的代码更新到本地库

git add . //把本地的修改加到stage中

git commit -m 'comment' //把stage中的修改提交到本地库

git push //把本地库的修改提交到远程库中

git branch -r / -a //查看远程分支/全部分支

git checkout master/branch //切换到某个分支

git checkout -b test //新建test分支

git checkout -d test //删除test分支

git merge master //假设当前在test分支上面,把master分支上的修改同步到test分支上

git merge tool //调用merge工具

git stash //把未完成的修改缓存到栈容器中

git stash list //查看所有的缓存

git stash pop //恢复本地分支到缓存状态

git blame someFile //查看某个文件的每一行的修改记录

git status //查看当前分支有哪些修改

git log //查看当前分支上面的日志信息

git diff //查看当前没有add的内容

git diff --cache //查看已经add但是没有commit的内容

git diff HEAD //上面两个内容的合并

git reset --hard HEAD //撤销本地修改

3、团队协作git操作流程:

克隆一个全新的项目,完成新功能并且提交:

git clone XXX //克隆代码库

git checkout -b test //新建分支

modify some files //完成修改

git add . //把修改加入stage中

git commit -m ''comment" //提交修改到test分支

code review

git checkout master //切换到master分支

git pull //更新代码

git checkout test //切换到test分支

git meger master //把master分支的代码merge到test分支

git push origin 分支名 //把test分支的代码push到远程库

4、图形界面Git工具比较简单可安装后自行使用

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180531G09ER000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券