1

レポートの作成方法を知りたいです。

私が必要とする最初のレポートは、特定のユーザーから開始日時から終了日時までに変更されたすべてのファイルです。

2 つ目は最初のものと似ていますが、すべてのメッセージのコミットと、特定のユーザーから開始日時から終了日時までに変更されたファイルが必要です。

どうすればこれを実行できますか?

例:

レポート 1

ユーザー

2013-07-03 12:34:45から2013-09-16 15:00:37に変更されたファイル

a.php
b.txt
c.ini
d.rb
... and the other ones

レポート2

ユーザー

コミットは2013-07-03 12:34:45から2013-09-16 15:00:37まで行われ、ファイルが変更されました

Message commit 1
    e.php
    j.txt

Message commit 2
    ka.rb
    asdf.jsp

... the another ones
4

1 に答える 1

2

これは:

私はgit自体のgitレポでそれらをテストしました:

  • Report1使用するだろうgit diff

    C:\Users\VonC\prog\git\git>
    git diff --author="Junio C Hamano" --name-status --pretty=oneline --abbrev-commit master@{"29 Jun 2013"}..master@{"14 Aug 2013"}
    

90 日しか遡れないrev-parse構文を使用しているため、これは満足のいくものではありません。

より堅牢な方法は、使用git rev-listするための適切な SHA1 を取得するように依頼することgit diffです
(ただし、これは unix のような bash でのみ機能し、DOS シェルでは機能しません)。

    VonC@VonCvb /c/Users/VonC/prog/git/git (master)
    $ git diff --author="Junio C Hamano" --name-status --pretty=oneline --abbrev-commit $(git rev-list -n 1 --before="10 Sep 2012" master) $(git rev-list -n 1 --before="12 Nov 2012" master)
  • Report2使用しますgit log

    C:\Users\VonC\prog\git\git>
    git log --author="Junio C Hamano" --name-status --pretty=oneline --abbrev-commit --since "10 Sep 2012" --until "12 Nov 2012"
    
于 2013-09-05T07:04:38.000 に答える