2016-07-31 20 views
3

リポジトリへの最新のコミット/プッシュを教えてくれるGitリポジトリのIDを取得するにはどうすればよいですか?Gitリポジトリで一番若いリビジョンを取得する方法

私はこれまでに以下を考え出しました。私は、これは以下の説明のために働くだろうかどうかを知りたいのですが、または私は何か他のものが必要な場合:

  1. 取得:

    rev=`git log --max-count=1 --pretty=format:%H` 
    

    を私は現在、このような何かを作品Subversionのためのバックアップスクリプトを持っていますsvnlook youngest /path/to/repoでリポジトリ内の最も新しいリビジョン。

  2. このリビジョン番号:dumpFile=${base}-${rev}.svndumpを使用してバックアップファイル名を作成します。
  3. ダンプファイルが存在するかどうかを確認してください。存在する場合は、以前の完全バックアップ以降にリポジトリにアクティビティが存在しないため、何もしません。そうでなければ続ける...

同じ方法で動作するGitフルバックアップスクリプトを希望します。毎晩または毎週かなり大きなレポをバックアップし、3つのあらゆるブランチ、すべてのタグ、すべてのプロパティで月間追加のディスクスペースを浪費したり、繰り返し同じデータを繰り返しダンプしたりすることはありません。

答えて

1

簡単な方法は、git rev-listを使用している:

# latest commit in current branch 
git rev-list -n1 HEAD 

# latest commit in all branches 
git rev-list -n1 --all 
関連する問題