2016-08-03 17 views
1

次のシナリオを検討してください。新しく作成されたブランチがどのブランチに基づいているかをどのように知っていますか?

私はmasterからブランチを作成し、そのブランチ1を呼び出して、そのブランチ(b)の別のコミットを作成します。それから私はgit checkout -b branch2を使ってbranch1とmasterをマージせずに別のブランチを作成します。

A)どちらのブランチ、branch2に基づいていますか?マスターブランチのブランチを自動的に作成するのか、ブランチのブランチを作成するのでしょうか?

B)最初の部分がカバーしていないブランチからブランチを作成する方法(つまり、最初の部分の答えがブランチ1のブランチを作成するものである場合、ブランチを作成する方法

master --> a 
       \ 
       \ 
      branch1 --> b 

     (location of new branch?) 

答えて

2

デフォルトでは、Gitブランチが現在のブランチから外れます(実際はHEAD)。あなたが指定したい場合

どこ始点を指定し、それから枝

git branch [--set-upstream | --track | --no-track] [-l] [-f] <branchname> [ <start-point> ] 
0

ブランチからブランチを作成するのではなく、コミットからブランチを作成します。デフォルトでは、現在チェックアウトしているコミットです。他のコミットが必要な場合は、そのドキュメントにあるように、branchコマンドの引数として渡してください。

Btw。あなたの頭を包み込むには、ブランチとタグをpost-itsを任意のコミットに固執することを検討してください。これは、ブランチとタグがGitだけで何もないからです。ポストイットをいつでも剥がして、別のコミットに従うことができます。ブランチの場合、ブランチをチェックアウトして新しいコミットを作成すると、自動的にこれが行われます。

関連する問題