git高阶

前言

网上类似的教程有很多,我仅把我在公司用到的常用的命令做个总结。并且结合项目来说,让大家更清晰一些。

项目开始

公司开了一个会,决定我们要开始xxx项目了,此时先把准备工作弄好。项目组会选择一个git平台,例如码市,在上面新建一个项目。

成员登录平台,复制代码的SSH链接,把项目拉倒本地:

git clone https://git.coding.net/xxxxxx/xxxxxx.git

然后用本地编辑器打开项目,就能进行开发的工作了(若出现权限问题请参考git入门)。

提交前

当你开发完一个功能,准备提交时,你需要关注:

  1. 线上是否有人提交过。
  2. 会不会出现冲突。

此时,先用:

git pull

更新一下线上的代码,若成功,说明没有冲突。

如果冲突(别人修改了你的代码),也是三步:

git stash
git pull
git stash pop

也就是先暂存一下本地的代码,再拉下来,再从暂存区恢复代码。
看看控制台中打印的内容,哪些文件合并了冲突,这些文件一般都有======stash内容,需要你自己删除冲突前的代码区域,留下想要的代码。

提交

三部曲:

git add xxx  //xxx为你要提交的文件,*代表所有
git commit -m "xxx"  //写一段话,你做了何修改
git push  //推送到线上仓库

其实这里面有很多规范需要注意,否则会给部署人员带来不必要的麻烦。

哪些文件该提交,哪些不该提交?
这时要充分利用.gitignore文件,例如本地的日志文件测试文件等,不要提交,把它们写在ignore文件中,git add *的时候就会忽略它们。

万一add错了咋办?
这是一个习惯,提交前(git commit -m "xxx"之前),先用命令:

git status

看看文件修改情况:


git6.PNG

绿色部分是被修改并且会准备提交到仓库的文件,红色部分是被修改但不会被提交到仓库的文件。此时你需要看一下,绿色部分是不是你想要提交的,如果不是:

git reset xxx  //xxx为文件名

git status一下,就会发现该文件已进入红色区域。

实战技巧:
有一次我在本地删除了一个文件,提交后线上的文件却没有删除,此时用:

git commit -a -m "xxx"

提交后就可以保证线上的文件也删除了。

分支

一般开发会用dev分支,而不是master分支,因为master分支会直接对接线上的代码,安全性极高,不会让人直接修改,我开发都是在dev分支上修改,提交代码后,再由其它人员(权限较高,一般是代码负责人)合并到master分支。

查看分支:

git branch //*为当前所在分支

切换分支:

git checkout dev

推荐一个实用工具SourceTree,git专用,下载后用谷歌邮箱登录即可,官网

git7.PNG

切换分支双击即可,复制分支什么的直接界面就可以完成,还可以只提交一个文件的部分内容。是不是感觉棒棒的~最后推荐阮大神的博客中的git常用命令清单

开启你的git之旅吧~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Git是目前最流行的版本管理系统,也是最先进的分布式版本控制系统(distributed version cont...
    pro648阅读 5,983评论 1 17
  • 本人很有上进心,乐于学习,但是智力有限,一直想读书但是总是收获很少,从亚马逊书单上得知《如何阅读一本书》是阅读界的...
    RudolfZhao阅读 506评论 0 0
  • 文/小晶 读了那么多书,却什么也没记住;写了那么多笔记,仍然Get不到重点;你的问题不是不努力,而是要尝试多角度思...
    悦文识己阅读 1,524评论 0 2

友情链接更多精彩内容