【 Git 工作流 】13条 Git 命令,满足你的工作需求

一个简单的工作流程

新人小明刚入职,进了某个项目组。熟悉了一段时间后,产品来需求了,需要小明在项目中单独开发一个新功能。那么,从加入项目到完成开发,小明应该怎样使用 Git 呢?
基本流程如下:

  • 配置公钥(配置详情请自行搜索);
  • 克隆项目到本地;
  • 从 master 分支上切个 dev 分支,dev 分支用于协作开发;
  • 从 dev 分支上切个新功能分支 feature/learn-git ,此分支用来开发自己的新功能;
    (注:根据具体情况,第3步和第4步可合为一步,直接在 master 分支上切个新分支进行开发)
  • 开发过程中,多使用 commit 和 push 保存代码,出问题了还能回退代码;
  • 开发完后,注意 pull 一下,与 master 主分支保持一致,没问题后先自测,然后发到公司的测试服务器上,通知测试姐姐进行测试;
  • 测试通过后,准备合并分支,即 merge。可能存在权限问题,这时先将开发好的新功能分支推送到线上,然后在公司的 git 项目托管网站上创建一个 “merge requests”,负责人审核后会自动合并。如果没有权限问题,直接切回到 master 分支,然后 git merge origin feature/learn-git 或者 git merge feature/learn-git, 然后在 git push 。

基本操作

项目克隆到本地后,远程仓库的名称一般默认为 origin ,可以理解为 origin 就代表“远程”的意思。可通过 git remote 查看远程仓库名,结果如有不同,替换以下所有命令中 origin即可。

1. 克隆项目文件—— git clone

加入一个已存在的项目时,执行此命令即可将项目克隆至本地,只需执行一次!

git clone <url>

2. 添加修改文件—— git add

常在后面跟参数 -A ,表示将项目根目录下,除 .gitignore 所匹配文件外,所有修改文件添加至暂存区(类似于缓存)。相当于告诉 git ,这些文件上了我的红名单,你给我盯紧了这些文件的动向。

git add -A

或者,你也可以将指定文件添加到暂存区(过于自由化,不喜欢:-O):

git add <文件路径及全称>

注: git add 和 git commit -m 命令可以合并简写为 git commit -am 。

3. 提交修改内容—— git commit

相当于一个保存操作,把写好的代码放进仓库里面存起来,每次 commit 都会自动产生一条日志,所以最好写上注释,便于协作者和自己查阅。

git commit -m '注释内容'

注:如果想回退版本,可根据日志内容进行操作,可查看下次手记。

4. 拉取远程代码

pull 可以将远程仓库的代码拉取到本地仓库进行比较,并将本地没有的内容合并到本地,与本地冲突的内容会在相应文件中标识出来(这时,你需要手动解决冲突代码!)。其实就一个目的,保持远程同步。

git pull origin <远程分支名>
5. 推送至远程仓库

commit 操作后可以 pull 和 push ,也可以不用。和 pull 一起捍卫远程同步,漫步云端!

git push

注: 所有 commit 的内容都能就行回退版本,所以无须过于担心犯错。

分支的创建、切换、合并、删除

当你新建一个项目时,都会有生成一个名为 master 的默认分支,一般作为项目主分支。你可以基于它任意创建、切换、合并及删除项目分支,不过最好符合工作规范,按要求来做!

1. 创建分支
git branch dev

注: 虽然创建了分支,但并没有切换到这个新建的分支上,需要和 checkout 结合着使用(可简写)。

2. 切换分支

切换分支前,请先确定当前分支是否有提交代码(commit),可执行 git status 查看状态。

git checkout dev

执行完后即从原分支切换到了 dev 分支。
注: 可与 git branch dev 合并命令为 git chekcout -b dev 。

3. 合并分支

合并分支前,请先确保你的分支已经开发完毕,然后谁与谁合,就 merge 谁。

git merge dev

注: 这样只是合并了本地分支,如果想合并远程分支,可执行 git merge origin dev,或者本地合并后推到远程分支上。

4. 删除分支

确定无误或者上线后,即可删除功能分支。

git branch -d dev

注: 删一删,世界就清净了!

辅助命令

查看状态
git status
查看差异
git diff
查看日志
git log
查看远程仓库名
git remote
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容