2013-03-16 9 views
19

(デフォルトは空白)Refspec支店指定子の違いは何ですか:ジェンキンスジョブの設定以下に:ジェンキンスGitのプラグインとRefspecs

enter image description here

私はRefspecを設定しようとしていますジョブ構成のオプション:

+refs/heads/master:refs/remotes/origin/master 

私のビルドスレーブにクローン化されたレポでは、.git/configファイルは次のようになります。

[core] 
     repositoryformatversion = 0 
     filemode = true 
     bare = false 
     logallrefupdates = true 
[remote "origin"] 
     url = https://user:[email protected]/scm/PROJECT/project.git 
     fetch = +refs/heads/*:refs/remotes/origin/* 
[branch "master"] 
     remote = origin 
     merge = refs/heads/master 

の値は(ジェンキンスジョブの設定から読み取る)が正しくないフェッチようです。さらに、ディスクスペースの消費に影響を与えません。

+0

明らかに、リポジトリの設定は影響を受けません。これが期待された動作かどうかは分かりませんが、refspecをgit fetchコマンドにも含めることができるので、厳密には必須ではないことに注意してください。したがって、実際に**どのコマンドが実行されるかを確認するようにしてください。 – bigge

答えて

20

Refspecのオプションは、分岐がジェンキンスによってを構築するためのコードを含ん操作(herehere参照)分岐指定子一方定義をフェッチ定義します。言い換えれば、Refspecは、コードがどのように取得されるかを定義するだけで、分岐指定子は、コードのどの部分がコンパイルされるかを定義します。

[編集:] refspecへの壊れたリンクを修正しました

+0

だから、もし私が例えば、ビルドするだけでよいなら。 ** my-feature **ブランチはrefspecを** my-feature **に設定するのに意味がありますか?完全なリポジトリ/すべてのブランチをフェッチするのではなく、スペースを節約できますか? – u123

+0

まあ、原理的には真ですが、gitはブランチを軽量に保つのに本当に良い仕事をしていることに留意してください。つまり、gitは違いを保存するだけで、複数のブランチをフェッチするオーバーヘッドは、ブランチがお互いに極端に異なる場合にのみ重要です。 – bigge

+0

ディスクスペースの消費には影響ありませんが、オプションが決して設定されていないようです - 編集された記事を参照してください。 – u123

関連する問題