初学者也想要使用git和git-flow

首先

近期,我终于开始适应使用Git了。但是发生了这样一件事情。当我在进行回顾时,发生了错误,我误删了分支,而且不知道在哪个提交中做了什么。因此,至少我想要使用Issue进行管理,并顺便学习一下git-flow!这就是我考虑的原因。(注意:我自己也是初学者。如果有任何问题,请留下评论!)

补充说明

这样,也可以在本地切换并将完成形的develop推送出去。因为我不清楚其中哪个是对的,所以请告诉我知道的人。

做好准备

我们准备一个代码仓库。(如果你是直接克隆并使用,可以跳过此步骤)
仓库创建时只是有一些东西在里面。如果可能的话,请参考GitHub上的方式来试一下。

$ echo "# リポジトリ名" >> README.md
$ git init
(既に初期ファイルを用意している場合)
$ git add *
(これからファイルを用意する場合)
$ git add README.md
# 以降は共通
$ git commit -m "initial commit"
$ git remote add origin リポジトリのURL
$ git push -u origin master

现在仓库的准备工作已经完成。接下来我们来试试git-flow吧。

Git flow (Git工作流)

如果不安裝的話無法使用,所以先安裝吧。如果是Mac系統,可以使用brew進行安裝。

# インストールされているかの確認
$ brew list | grep git-flow
# インストール方法
$ brew install git-flow

git-flow的初始化

当您准备好仓库时,您进行了初始化。让我们同样初始化git-flow吧。

$ git flow init 

输入连击没问题。我们来确认一下创建的分支吧。

$ git branch -a
* develop
  master
  remotes/origin/master

develop分支已经添加了呢。另外,通过*号可以知道当前处于develop分支。请查看远程分支。从中可以得知,现在只有master分支被注册到远程分支了。我们需要进行push来注册一下。

$ git push origin develop

请确认是否已经完成注册。

$ git branch -a
* develop
  master
  remotes/origin/develop
  remotes/origin/master

让我们提出一项议题

來吧,我已經變成了一個在這個feature/分支上不斷開發的人。雖然我無法回頭看,但卻造成了一個充斥著無法理解的提交的悲劇倉庫。好的,我們來建立一個議題吧。

我们先到刚刚创建的存储库,点击问题(Issue)然后跳转到创建页面。

首先,请确认以下内容。
关于开发者的任务管理,在GitHub上进行的经验分享。

我这样做了。

创建CRUD的标题字段

# 概要
CURD機能を作成する

## タスク
- [ ] データベースのテーブルの作成
- [ ] データを扱うモデルの作成
- [ ] リクエストを扱うコントローラーの作成
- [ ] 表示するビューの作成

第二个
标题栏
创建数据库表格

## 概要
データベースのテーブルを作成する

## 親課題
#1 CRUDの作成

## タスク
- [ ] migration してテーブルの素を用意
  - [ ] users テーブルのmigration
  - [ ] articles テーブルのmigration
  - [ ] tags テーブルのmigration
  - [ ] article_tag テーブルのmigration
- [ ] migrate してテーブルを作成

既然我们已经创建了这个问题(issue),现在让我们开始实际操作吧。

切断分支

在切割分支之前

让我们创建一个新的工作分支并开始工作。这次我们使用git-flow,所以命令会有一些变化。

$ git flow feature start <ブランチ名>

我就是这样做的。

$ git flow feature start db_migrations_#2

确认

$ git branch -a
  develop
* feature/db_migrations_#1
  master
  remotes/origin/develop
  remotes/origin/master

由于远程尚未反映该变化,我们应该进行推送操作。

$ git flow feature publish #2_db_migrations

就算吧。获取拉取最新存储库状态的方法。

$ git flow feature pull origin db_migrations_#2

开始做作业

由于建立了分支,终于可以开始开发了,没什么特别变化的。

# ファイルやフォルダが増えた
$ git add *
$ git add ファイル名

# コミット
$ git commit -m "コメント"

在推动的方法中,有两种方式可供选择。

# git flow を用いる場合
$ git flow feature publish db_migrations_#1

# どちらかでpush
$ git push origin feature/db_migrations_#1
$ git push origin HEAD

我参考了这里的提交信息。
Git的提交信息的写法。

Pull 请求

我们特地设立了Issue,并使其可以进行管理,因此我们肯定希望将其关联起来。在Pull Request页面右侧的底部第二个位置有一个名为Linked issue的选项。请从那里进行选择。

此外,在Merge pull request的评论栏内,我们需要添加“close #2”。当合并完成时,问题将被自动关闭。

最后,请删除合并后的分支。

在本地做的事情

我最早开始了git flow,所以必须完成它。具体如下所示。

$ git flow feature finish db_migrations_#2

另外,我们也应该删除剩余的远程分支。

# 確認
$ git remote show origin
# 削除
$ git remote prune origin

让我们获取远程最新的状态,从 develop 分支中获取。

$ git fetch origin develop
$ git merge origin/develop
# 2つを1度に行う場合
$ git pull origin develop

请参考发布说明。

印象

使用feature作为前缀创建分支真是非常麻烦。还有本地分支的删除也是。解决这个问题让我个人非常高兴。下次我还想尝试使用项目管理这样的功能。初学GitHub上的项目管理对于新员工。

如果您想获取已经创建的分支等情况的话,这里可以作为参考。

・通过图表和命令来理解!使用git-flow进行开发的流程和方法 (1/2)

请阅读以下内容,并以中文原生态方式进行改写,只需提供一种选择:

参考。

公式秘籍
· git-flow秘籍
参考
· 尝试git-flow
· 在命令行中安装并使用Git Flow
· git-flow是什么?
· 总结git-flow使用的分支
· 使用PullRequest的GitHub开发流程
· 将GitHub的问题与提交相关联
· 使用git-flow的开发流程

广告
将在 10 秒后关闭
bannerAds