创建提交
背景说明
在日常代码开发中,开发者更多的时候是将云端仓库克隆到本地,在本地进行代码开发,完成了阶段性开发任务后,再提交回远程云端仓库,本文将介绍使用Git客户端提交修改代码的方法。
操作步骤
一般情况下,开发者不会直接在master分支中进行开发,而是基于master或者dev分支创建一条feature分支,在feature中进行开发,然后将其推送到云端仓库,最后在云端仓库中将其合并到master或dev分支中,下面将模拟以上操作。
- 进入本地仓库目录,打开Git客户端,本案例以Git Bash为例,其它使用Git进行管理的工具的原理和命令使用基本是一致的。
- 基于master分支新建一条分支feature1001,并切换到其中,在master分支中执行以下命令。
git checkout -b feature1001 #如下图①
这个命令相当于先新建分支,然后直接切换到此分支。
执行成功如下图中②所示,此时可用ls命令查看其中包含的文件(如下图中③),此时他与master分支中内容是一样的。
- 在feature分支中进行修改(代码开发)。
Git是支持Linux命令的,本案例使用touch命令新建一个newFeature1001.html文件,代表开发者已经在本地完成了新特性的开发,其对本地代码库的影响是新增了文件。
touch newFeature1001.html
创建后再次使用ls命令可以看到多出了这个文件。
- 使用add、commit命令依次将文件从工作区加入暂存区,再提交到本地版本库。(这是什么原理?)
期间可以穿插使用status命令,观察文件状态。
- 使用status命令看到,目前工作区有一个文件未纳入版本管理,如图中①。
- 使用add命令将文件加入暂存区,如图中②。
git add . #使用“.”代表所有文件,包括隐藏的,也可以直接指定某个文件
- 使用status命令看到,文件已经加入到暂存区,正在等待提交,如图中③。
- 使用commit命令将文件提交到本地版本库,如图中④。
git commit -m “您的提交备注”
- 再次查看状态,没有可处置文件,说明提交成功了,如图中⑤。
- 将本地的分支推送到远程云端仓库。
git push --set-upstream origin feature1001
本命令会在云端仓库新建一条与您本地feature1001一样的分支,并将其进行关联、同步。
其中origin是您的远端仓库别名,一般直接可控的仓库默认别名为origin,您也可以直接用仓库地址代替。
- 查看云端分支。
登录代码托管服务,进入您的仓库,在文件列中可以看到此时已经可以在云端切换到您的分支。
如果没有看到您刚推送上来的分支,很可能是您的origin绑定到了另外的仓库,请使用仓库地址再次推送。
- 此时您可以使用代码托管服务提供的合并请求评审功能,发起分支合并,并通知审核人进行评审,最终将新特性合入到master或dev分支中。