2012-01-08 21 views
0

gitコマンドラインで、リモートリポジトリからブランチ履歴をコピーする方法があるかどうかを知りたい。つまり、.git/logsディレクトリをリモコンから.git/logsディレクトリにコピーします。これは、自分のログフォルダを上書きすることを意味しています。git:リモートブランチ履歴をコピーする(.git/logsフォルダ)


EDIT:私のコンピュータ上の

$ git rev-parse --verify [email protected]{2} 

とあります

は、リモートI型できるようにしたい、originと呼ばれるにfooと呼ばれる分岐があると仮定し、さらに明確にするために、起源と全く同じものを出力します。これは単にgit logを見るだけではありません。

さらに、誰かがコミットを元に戻すためにgit update-ref foo foo^を実行し、その履歴は.git/logsフォルダに保存されます。

答えて

1

履歴は複製と複製されます。ブランチをチェックアウトしてログを実行するだけです。

例 - リモートリポジトリがoriginで、ブランチがfooであると仮定します。

あなたは、今

git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short 

を入力し、あなたが歴史を見ることができますチェックアウトや歴史を取得するには、リモートブランチ

を追跡し、git branchを実行することにより、あなたは枝fooであることを確認するためにgit checkout --track -b foo origin/fooを実行することができます

支店の

$ git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short 
* 075086d 2012-01-06 | Added for joyent (HEAD, origin/tableUpdate, tableUpdate) [xxx] 
* 8352180 2012-01-06 | Added package and loggging [xxx] 
* ed9300f 2011-12-26 | Added stylesheet [xxx] 
* e8b39fa 2011-12-26 | Increased templating, renamed div to meaningful names [xxx] 

マスターに切り替えると、それは異なる、実行中git checkout master D git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=shortは、私は長いlogコマンドを入力するときマングリングや落下指を防ぐために、最後に

$ git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short 
* 6402a2e 2012-01-08 | Added README (HEAD, origin/master, origin/HEAD, master) [xxx] 
* 292c57a 2012-01-08 | Removed port, this is autodetected [xxx] 
* e0ef362 2012-01-08 | Changed port to 8080 and document lookup is dynamic [xxx] 

を取得します。あなたは、~/.gitconfig(Unixのを想定して)自分のホームディレクトリに作成し、ショートカットを作成して、これは非常に私が望んでいるすべてのものをしないあなたはその後、ちょうど残念ながらgit hist

+0

を実行することができますライン

[alias] hist = log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short 

を追加することができますほとんどの通常の状況で情報を取得します。私の質問に私の編集を参照してください。 –

関連する問題