前言
网上类似的教程有很多,我仅把我在公司用到的常用的命令做个总结
。并且结合项目来说,让大家更清晰一些。
项目开始
公司开了一个会,决定我们要开始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
看看文件修改情况:
绿色
部分是被修改并且会准备提交到仓库的文件,红色
部分是被修改但不会
被提交到仓库的文件。此时你需要看一下,绿色部分是不是你想要提交的,如果不是:
git reset xxx //xxx为文件名
再`git status`一下,就会发现该文件已进入红色区域。 实战技巧: 有一次我在本地删除了一个文件,提交后线上的文件却没有删除,此时用:
git commit -a -m "xxx"
提交后就可以保证线上的文件也删除了。 ### 分支 一般开发会用`dev`分支,而不是`master`分支,因为`master`分支会直接对接线上的代码,安全性极高,不会让人直接修改,我开发都是在dev分支上修改,提交代码后,再由其它人员(权限较高,一般是代码负责人)合并到master分支。 查看分支:
git branch //*为当前所在分支
切换分支:
git checkout dev
推荐一个实用工具SourceTree
,git专用,下载后用谷歌邮箱登录即可,官网。
切换分支双击即可,复制分支什么的直接界面就可以完成,还可以只提交一个文件的部分内容。是不是感觉棒棒的~最后推荐阮大神的博客中的git常用命令清单。
开启你的git之旅吧~