0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

developからdevelopにPushできないような設定方法

Last updated at Posted at 2019-04-02

コードレビューがなし、直接developブランチに反映するのは危険ので、
直接"develop"ブランチへのpushを検知して止めるような方法を紹介します

マージの正しいルート:

リモートのdevelopブランチから新しいブランチを切る

先程作った新しいブランチで改修を行う

リモートのdevelopブランチにマージリクエストを投げる

レビューを行う

リモートのdevelopブランチにマージする。

開発途中で、ブランチを切るのは忘れて、直接developブランチにpushしてしまったルート

ローカルのdevelopブランチで改修を行う

リモートのdevelopブランチにマージ

#クライアント側で設定方法
1、git管理配下に下記のファイルを追加する

#!/bin/sh
# project_root/.git/hooks/pre-push
not_allowed_branchies="develop"

read local_ref local_sha remote_ref remote_sha

remote_branch=`echo ${remote_ref} | awk -F "/" '{ print $NF }'`
for branch in `echo ${not_allowed_branchies}`
do
  if [[ "${remote_branch}" = "${branch}" ]]; then
    echo "***************************************************************"
    echo "Gitのクライアント側で、リモートのdevelopヘの直接pushを禁止されていました。"
    echo "リモートの${branch}ブランチへpushしようとしたので中断しました!"
    echo "***************************************************************"
    exit 1
  fi
done

2、ファイルの実行権限を与える

$ chmod 755 project_root/.git/hooks/pre-push

#リモート側での設定方法
gitlabの場合、プロジェクトのsetting画面で設定ができるので、詳細の設定方法は略します。

#参考先
http://www.denet.ad.jp/technology/2017/11/gitmasterdeveloppush.html

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?