发布于 

微服务: Git入门

代码管理

如果你还没有Github账号,赶紧点击 这里 去创建一个,很简单,然后下载 Git GUI 安装即可,如果你还不会这些操作,请行动起来去搜索对应的方法,这里不再赘述。

在项目开发过程中,除了写代码之外,还需要对代码进行管理。在说如何管理代码之前,先跟大家分享几个实际开发中关于代码管理的场景。

案例1:入门的小旺

小旺是名入门不久开发之路的编程狂魔,对代码有颗执着的心。平时编写的代码全部放在自己的那台Macbook Pro上面,有一天小旺不小心把自己编写的重要代码给删除了,万恶的 rm -fr code 呀!心中一万头草泥马奔驰而过。这让小旺伤透了脑筋,只能熬夜硬着头皮再把它给码起来,自己犯的错只能默默地承受着。

案例2:新手小李和小刚

小李和小刚是一对编程搭档(公司只有他们两个Android开发,相依为命吧),两位都是开发的新手。每次小李和小刚分别提交代码到仓库,都要经历一场惨目忍睹的博弈。所谓的博弈指的是两位要花很长时间来解决代码冲突的问题,哎,除了写代码还要解决这些无聊的问题,烦!

如果小旺知道使用Git管理代码,也可以避免误删的风险。

小李和小刚要比小旺机智,至少知道代码要提交到仓库,当然小李和小刚工作经验丰富,公司也要求代码必须提交。但是二位却没有用好代码管理工具,从而带来了一些烦恼。

是的,管理代码很重要,无论使用SVN还是Git,至少你要熟练掌握其中一个,我建议还是直接学习Git吧,毕竟现在大多数公司都在用它。

Spring Boot 系列的文章中,使用 Github 作为我们的代码管理仓库,使用Git工具进行代码的提交、修改、合并和删除以及对分支的管理和使用。

Git 提交

把在 微服务: 想办法让项目运行起来 写好的代码提交到代码仓库中,这样即使本地代码被误删也可以从远程找回来,安全。假如你更换一台电脑进行编程也可以从远程仓库拉下代码进行编程,随时随地撸代码。

提交代码,很简单,windows上面安装git工具即可。我使用的是 Git GUI,它自带 Git Bash,有种Unix终端的风范,贼亲切!

我比较喜欢使用命令行来进行操作,打开工程目录,如下:

1555860042560

然后在空白地方右键,会显示 Git Bash,选他就会打开命令终端工具,如下图所示:

1555860285254

在终端操作命令如下:

1
2
3
4
5
6
# 添加所有文件
git add -A *
# 提交到本地仓库并加上注释
git commit -m "Create a greate project"
# 推送到远程master分支
git push origin master

如果你之前没有进行任何git提交的话,首次提交会提示你输入用户名和密码,此时你输入自己的github账号和密码即可。

三步操作完成后,工程也就提交成功了。为了验证提交是否成功,你也可以到远程仓库(使用浏览器打开你的仓库地址)刷新看看有没有刚才提交的内容,如果网络不好就等会在瞅瞅。

创建分支

为了不影响主干(master)上面的代码,我们可以创建一个个人分支来进行开发,例如我的个人分支 veryitman-feature 分支。

1
git chekcout -b veryitman-feature

上面的git命令意思是在本地创建一个名为 veryitman-feature 的分支。

注意:git chekcout -b xxx 相当于进行下面两步操作

1
2
3
git branch xxx

git checkout xxx

主干 master 本身也是一个分支,只是开发者为了协助和代码管理方便创建了各自的分支,等代码测试或者验收通过再从自己的分支合并代码到主干 master 上面,所以一般 master 分支上面的代码都会认为是相对理性、安全的代码。

分支的存在是为了方便代码的管理,类似于SVN的trunk、tag、branch文件夹管理代码一样。

创建完成后,提交分支到远程仓库即可,终端操作命令如下:

1
git push origin veryitman-feature

去远程代码仓库中,刷新页面后,在Branch可以看到刚才创建的 veryitman-feature 分支,如下图所示:

1555860471904

也可以使用下面的方式进行创建和推送分支代码,操作步骤如下:

1
2
3
4
5
6
# 在本地创建新的veryitman-feature分支 
git branch veryitman-feature
# 切换到新的veryitman-feature分支
git checkout veryitman-feature
# 将新的分支推送到仓库
git push origin veryitman-feature

切换分支

在上面的操作中,大家已经看到我们创建了 veryitman-feature 分支,加上原来默认的 master 分支,一共是两个分支了。

一般来说,master 分支上面的代码应该是经过测试并且稳定的版本,保证其稳定不会出错。而其他分支如上面的 veryitman-feature 是我们需要进行开发的个人分支,不保证其稳定性(因为在开发嘛)。等 veryitman-feature 开发完成再合并到 master 分支上面,关于分支的合并操作,后续再说吧!

Git 支持在分支之间自由切换,比如你在 veryitman-feature 分支,提交完成代码后,可以切换到 master 分支。切换分支的命令如下:

1
git checkout master

如果再想从 master 分支切换到 veryitman-feature 也可以,如下:

1
git chekcout veryitman-feature

切换分支一般用在下面几个场景中:

  • 合并代码
  • 多分支开发
  • 修复问题

删除分支

Git 提供了可以删除分支的方法和命令。

删除分支分为两类,一个是仅仅删除本地分支,另一个是删除远程分支。

删除本地分支意思是删除已经存储在你本地计算机上面的文件,如下:

1
2
# 在本地删除veryitman-feature分支
git branch -d veryitman-feature

删除远程分支意思是删除存在 GitHub 上面的代码文件,如下:

1
2
# 在github远程端删除veryitman-feature分支
git push origin --delete veryitman-feature

关于Git的使用还有很多,今天先说这么多,用到的时候再补充。现在最重要的是需要你去注册一个 Github 账号折腾起来,熟能生巧,动手实践才是王道!


改变,从你我相识开始~


本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

veryitman