宝哥软件园

Git使用规范流程概述

编辑:宝哥软件园 来源:互联网 时间:2021-09-07

以下是ThoughtBot的Git使用规范过程。我从中学到了很多,我建议你用同样的方式使用Git。

步骤1:创建一个新分支

首先,每次开发新功能时,都应该创建一个新分支。

#获取trunk $ git check out master $ git pull的最新代码#创建新的开发分支我的功能$ git checkout-b我的功能步骤2:提交分支提交

修改分支后,您可以提交。

$ git add-all $ git status $ git commit-verbose git add命令的all参数,意思是保存所有更改(包括创建、修改和删除)。由于Git 2.0,all是git add的默认参数,所以可以用git add来代替。

Git状态命令,用于查看已更改的文件。

git commit命令的详细参数列出了diff的结果。

第三步:写提交信息

提交提交时,您必须提供完整而简短的提交信息。这是一个样本。

50字以下的现在时摘要

*关于提交的更多信息(72个字符以下)。*关于提交的更多信息(72个字符以下)。

http://project.management-system.com/ticket/123的第一行是总结,不超过50个字,然后一个空行列出了变化的原因、主要变化和需要注意的问题。最后,提供相应的网址(如Bug票)。

第四步:与主干同步

在树枝的发展过程中,我们应该始终与树干保持同步。

$ git fetch origin $ git rebase origin/master步骤5:合并提交

分支开发完成后,很可能会有一堆提交,但合并到主干时,往往希望只有一个提交(或者最多两三个提交),这样不仅清晰,而且易于管理。

那么,如何合并多个提交呢?这需要git rebase命令。

$ git rebase-I origin/master git rebase命令的I参数表示交互,git会为下一个操作打开一个交互界面。

下面以Tute Costa为例说明如何合并提交。

pick 07c5abd介绍OpenPGP并教授基本用法pick de9 b1eb Fix post checker :3360 post # urlspick 3e 7e 36嘿,孩子们,停止所有高亮点击fa20af3 git交互式rebase,挤压,修改# Rebase 8db7e8b.fa20af3到8db7e8b## Commands:# p上,pick=使用commit# r,reword=使用commit,但编辑commit消息# e,edit=使用commit,但停止修改# s,pick=使用commit,但融合到以前的commit# f中,fix=像‘puck’一样,但丢弃此commit的日志消息# x,exec=使用shell#运行命令(其余行)这些行可以重新排序;它们从上到下执行。##如果您在此删除一行,提交将会丢失。##但是,如果您删除了所有内容,追加将被中止。# #请注意,空提交会被注释掉。在上面的交互界面中,首先列出当前分支的最近四次提交(较新的是较低的)。每个提交前面都有一个操作命令,默认值是pick,这意味着选择了这一行的提交,需要进行rebase操作。

在四个commit下面是许多注释,列出了可以使用的命令。

选择:通常选择

重写:选择并修改提交信息;

编辑:如果选中,rebase将暂停,允许您修改此提交(请参考此处)

挤压:如果选中,当前提交将与前一个提交合并

修正:与挤压相同,但不会保存当前提交的提交信息

Exec:执行其他shell命令

在以上六个命令中,挤压和修复可以用来组合提交。首先,更改commit前的动词,使其合并为puck(或s)。

pick 07c5abd介绍OpenPGP并教授基本用法de9b 1 EB Fix post checker :3360 post # urlss 3e 7ee 36嘿,孩子们,停止所有突出显示的pick fa 20 af 3 git交互式rebase,挤压和修改。实现之后,当前分支中只剩下两个提交。第二行和第三行的提交将合并到第一行的提交中。提交信息将同时包含这三个提交的提交信息。

#这是3次提交的组合。#第一次提交的消息是:介绍OpenPGP并教授基本用法#这是第二次提交消息:修复后检查器:3360发布# URLs #这是第三次提交消息:嘿,孩子们,如果您将第三行中的挤压命令更改为修复命令,请停止所有突出显示。

pick 07c5abd引入OpenPGP并教授基本用法de9b 1 EB Fix post checker :3360 post # urlsf 3e 7ee 36嘿,孩子们,即使停止所有高亮显示的pick fa 20af3git交互式rebase,挤压和修改运行,结果相同,也会生成两个提交,第二行和第三行中的提交会合并到第一行的提交中。但是,在新的提交信息中,第三行中的提交信息将被注释掉。

#这是3次提交的组合。#第一次提交的消息是is:Introduce OpenPGP并传授基本用法#这是第二次提交消息: fix post checker :3360 post # URLs #这是第三次提交消息: #嘿,孩子们,停止所有突出显示的挤压和修复命令,这些命令也可以用作命令行参数来自动合并提交。

关于$ git commit-fix up $ git rebase-I-auto puck的用法请参考这篇文章,这里就不解释了。

第六步:推送到远程仓库

合并提交后,您可以将当前分支推送到远程仓库。

$ git push-force origin my feature git push命令应该添加force参数,因为在rebase之后,分支历史已经改变,不一定与远程分支兼容,可能会被强制推送(见此处)。

第7步:发送拉取请求

提交到远程仓库后,您可以向主分支发送一个拉取请求,然后要求其他人查看代码以确认它可以合并到主分支中。

摘要

以上就是本文的全部内容,希望能给大家的学习或工作带来一些帮助。有问题可以留言交流。

更多资讯
游戏推荐
更多+