2

私のプロジェクトの1つでは、通常、開発ブランチから新しいブランチを作成する必要があり、(新しいブランチで)作業が完了したら、新しいブランチを開発ブランチにマージする必要があります。これが私がするステップです:

 git clone –b development <git repository url>
 git branch new-branch
 git checkout new-branch
 git push --all

私は自分のコードをnew-branchで実行し、commit/pushコードをnew-branchで実行します。

次に、new-branchを開発にマージする必要があります(new-branchでタスクを完了するまでに、開発ブランチは他の開発者のコ​​ミットをさらに取得することに注意してください)。私の質問は、new-branchをdevelopment-branchにマージし、それをリモートリポジトリにプッシュするための正しいアプローチは何ですか?

ありがとう

4

3 に答える 3

1

私は機能ブランチを押しつぶされたコミットとして上に置き、develop(ment)後でそれを捨てることを好みます。

git checkout development
git merge --squash new-branch
git branch -D new-branch
git push origin :new-branch

このようにして、機能全体を含む単一のコミットを保持します。

于 2012-04-10T19:36:31.720 に答える
0

他の人が「開発」にプッシュしている場合、おそらくご覧になったように、「非早送り」警告のためにプッシュが失敗する可能性があります。したがって、適切なアプローチは、最初に開発、ビルド、およびテストから変更をプルし、次に開発にプッシュすることです。ワークフローは次のとおりです。

$ git clone -b development <development repository>  <devdir>; cd <devdir>
$ git checkout -b new-branch
$ <edit, build test>
$ git add ...
$ git commit ...
# repeat above 3
#
# now you want to get your changes back on development
$ git pull origin development
$ <build, test - to ensure new-branch works w/ latest development>
$ git push origin new-branch:development
于 2012-04-10T21:37:35.290 に答える
0
git checkout master
git merge dev
git commit -m 'merged branches'
于 2016-11-16T04:49:00.363 に答える