2016-08-25 15 views
1

私はgitでウェブサイトを構築しましたが、始めから私はマスターブランチでは何もしませんでした。これは現在空です。私は始めました:マスターがないときにマスターに切り替える方法

$ git checkout -b dev_project 

このブランチですべての開発を終えました。マスターブランチをリリースブランチとして使うのは良いと思っていましたが、私はローカルブランチがないことが分かりました。

c:/wamp/www>git branch 
8.0.x. (my drupal branch) 
dev_project (my project branch) 

どのようにしてdev_project HEADをマスターにマージできますか?

+0

をGitリポジトリのデフォルトのブランチ名がマスターです。 'git branch'と入力すると、masterは見えませんか? – Konst

+0

私はそれがデフォルトのブランチであることを知っていますが、gitブランチと入力するとローカルにマスターが表示されません。私はこの質問を投稿しました:-) – TBJ

+0

'git branch -a'を実行すると、マスターブランチが表示されますか? (これはあなたのすべてのリモコンの分岐を示しています) – djames

答えて

1

は、分岐マスターを作成します。マスターは実際にはdev_projectからに分岐します。それは不思議そうですが、実際にあなたがしたいことです。

はdev_projectに作業を続行し、あなたが発行し、マスターにそれをマージ解除したいとき:

git checkout master 
git merge dev_project 
1

ブランチは、コミットを指すポインタよりも多かれ少なかれgitです。まだマスターブランチを作成していないので、指し示すことのできないポインタはありません。 あなたは、単にこれは、ポインタを作成し、現在のコミットを指すように設定し

git branch master 

を呼び出すことにより、ご使用のリリースブランチを開始することができます。その後、機能ブランチの作業を続けてください。masterと一緒にマージしてください。

しかし、ブランチは設計上の動的エンティティであり、コミット履歴からは、コミットを任意のブランチに接続するものはありません(ブランチはコミットを参照するブランチです。他の方法でラウンド)。そのため、マスターブランチのみを使用してバージョンを公開すると、以前のバージョンを再度見つけることができなくなります。対照的に、タグは固定エンティティであり、リリースをマークするために使用されます。あなたはマージするために何かを持っていない

git branch master dev_project 

+0

cmaster:私のgithubリポジトリにはマスターブランチがありますが、ローカルにはありません。マスターをローカルでチェックアウトすることはできますか?私はGitubからマスターブランチを取得するために、gitを使ってすべての、またはsomehtingをフェッチするべきではありませんか? – TBJ

+0

cmaster:私はマスターとマージし、リリースタグを設定すると思った。そうすれば、私は以前のバージョンを見つけることができますが、マスターブランチ上だけにあります。 – TBJ

+0

@TBJ 'git branch -a'を呼び出すと、どのような出力が得られますか? '' remote/origin/master'という行がありますか?そうでなければ、 'git fetch'を実行した後に表示されますか?そうであれば、上流の 'master'(' git checkout master'がすべき)をチェックアウトし、フィーチャーブランチをマージし、結果をプッシュする必要があります。 – cmaster

関連する問題