Help us understand the problem. What is going on with this article?

gitコマンドメモ

More than 1 year has passed since last update.

参画したプロジェクトではGitLabを使用していたがあまり詳しくない人のために開発フローに沿ってコマンドを解説していくための説明用

リポジトリのダウンロード(クローン)

すでにリポジトリが作成されており、開発者として参画した場合
git clone [url]でリモートのリポジトリをクローンする

$ mkdir git_work              # リポジトリをクローンするためのディレクトリ作成
$ cd git_work                 # 作成したディレクトリに移動
$ git clone git@xxxxx.git     # sshの場合
$ git clone https://xxxxx.git # httpsの場合
$ cd xxxxx                    # cloneしたディレクトリに移動

ssh接続かhttps接続かによって、URLの部分を適宜変更して実行

git-flowに則ってdevelopが次期開発のブランチの場合
現在のブランチを確認するとmasterのみとなっているのでリポジトリからdevelopブランチをチェックアウト

$ git branch
* master
$git checkout -b develop origin/develop
$ git branch
* develop
  master
$

開発時

他の人のコミット等が入っているかもしれないので、developブランチを最新にする

$ git checkout develop
* develop
  master
$git pull origin develop
From xxxxx
 * branch            develop     -> FETCH_HEAD
Already up-to-date.
$

開発する機能のブランチを作成する
git checkout -b feature/[機能名]

$ git checkout -b feature/login # ログイン機能を作成する場合
Switched to a new branch 'feature/login'
$ git branch
  develop
* feature/login
  master
$

適宜実装を行い、修正したファイルを確認

$ git status
  差分がある場合、ここにファイル名が表示される
$

修正した対象のファイルをインデックスに登録して、コミット

$ git add -p
  修正した内容を登録するかどうか対話形式で表示されるので、
  修正した箇所なら「y」、意図していない修正の場合「n」で選択
$ git commit -m "コミットメッセージ"

コミットメッセージは後で見返したときに何を修正したのかあたりをつけられるように入力しておくと良いかな。

コミットまで完了したらリモートにプッシュ

$ git push origin feature/login

developへのmerge

GitLabの画面でmerge requestを作成
コンフリクトが出ていなければそのままmerge
コンフリクトが出ている場合

$ git fetch -p
$ git merge develop
$ git status

コンフリクトしているファイルが表示されるので、コンフリクト箇所を丁寧に手動merge

修正完了したら

$ git add -p
$ git push origin feature/login

これでGitLabの画面からmergeできるようになっているはず。。。

とりあえず説明用としてココまで

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away