0

私は他のユーザーと一緒にgitブランチを使用することに非常に慣れていないので、プロジェクトに関する助けを期待していました。私のプロジェクトには3つのブランチ(master、auth、およびdev1)があります。私はmasterブランチのユーザーであり、最近authブランチをローカルフォルダーに複製して編集しました。

私の質問は...authブランチに修正を(プッシュ)してマスターブランチとマージするにはどうすればよいですか?編集した認証ブランチをマスターとローカルで(マージしますか?)できますか?

別名

Philは*masterを所有しています

ボブは*authを所有しています

Philは*authをローカルコンピューターに複製します。* authを編集し、編集した*authを*masterとマージしたいと考えています。

4

3 に答える 3

1

変更を追加するブランチに移動して(git checkout master)、変更をマージするだけです(git merge auth)。

一般的な順序は次のとおりです。

と仮定するauthと、master現在は同一です。

git checkout authあなたは今認証ブランチにいます-

いくつかの編集を行い、コミットします(git commit -m 'awesome changes to auth branch'

git checkout masterこれで、変更されていないマスターブランチにいます

git merge authすべてがうまくいけば、authで行われた変更はmasterブランチにマージされます

git push


AFAIK(そして私を信じてください、私もこれに慣れていません)、あなたがmasterマージする前にあなたの友人がブランチに同様の変更を追加すると問題が発生します。これが発生した場合、gitは、マージ中に保存する変更が誰であるかを認識しません。


また、「ProGit」という本を読むことを強くお勧めします。簡単に見つけられるオンラインで無料です。非常に読みやすく、すべてが理にかなっているのに役立ちます。

于 2012-09-27T01:58:33.330 に答える
0

あなたは最新のマスターを持っているので、これはあなたが望むことをするだろうと思います:

git checkout master
git merge auth
git push origin master

マスターに移動し、認証をマージしてから、リモートにプッシュします。

ただし、この方法ではリモート認証を更新しないため、最初にコミットをプッシュすることをお勧めします。

git push origin auth
于 2012-09-27T01:48:36.510 に答える
0

私の質問は...authブランチに修正を(プッシュ)してマスターブランチとマージするにはどうすればよいですか?編集した認証ブランチをマスターとローカルで(マージしますか?)できますか?

次のコマンドを使用して、修正をauthブランチにプッシュします(リモートリポジトリの名前が「banana」であるとしましょう)。

git push banana auth

私があなたの質問を正しく読んでいるなら、あなたはあなたのブランチをプッシュしたいと思っています、そしてそれらをマージします。この順番で行うことはできません。それは「マージしてからプッシュする」必要があります。「ローカル」でのみマージしてから、上記のコマンドを使用して変更をリモートリポジトリにプッシュできます。

ちなみに、ブランチごとに、少なくとも1回は次のコマンドを使用してください。

git push -u <branchName>

これにより、ローカルブランチがリモートブランチに関連付けられるため、「デフォルトのブランチがありません、waaah!」という迷惑なメッセージが表示されることはありません。または、すべてのブランチを一度にプッシュしたい場合は、そのメッセージが何であれ。

マージする限り、上記の回答はそれに答えています。

これがいくつかのことをクリアすることを願っています!

于 2012-09-27T14:38:03.290 に答える