3

svn コメントの文字列に基づいて Subversion トランク URL のすべてのリビジョンを取得するためのシェル コマンドのヘルプが必要です。

URLではなく1つのファイルで取得することがわかりました。

私は回転数を取得しようsvn log URL --stop-on-copysvn log URL --xmlしましたが、失敗しました。

ありがとう !!

4

4 に答える 4

1

Subversion 1.8 の場合は

svn log URL --search STRING

于 2013-07-30T12:25:43.393 に答える
1

を使用する別の方法sed。おそらく完璧ではありませんが、複数行のコメントでも機能します。SEARCH_STRINGあなたの個人的な検索のために置き換えてください。

svn log -l100 | sed -n '/^r/{h;d};/SEARCH_STRING/{g;s/^r\([[:digit:]]*\).*/\1/p}'
于 2013-07-30T10:27:13.917 に答える
0

フォローしてみてください。

x="refactoring"; svn log --limit 10 | egrep -i --color=none "($x|^r[0-9]+ \|.*lines$)" | egrep -B 1 -i --color=none $x | egrep --color=none "^r[0-9]+ \|.*lines$" | awk '{print $1}' | sed 's/^r//g'

refactoring検索文字列に置き換えます。必要に応じてパラメーターを
変更します。 大文字と小文字を区別しない一致が使用されます ( )。svn log
egrep -i


コメントに基づいて編集します。

x="ILIES-113493"; svn log | egrep -i --color=none "($x|^r[0-9]+ \|.*lines$)" | egrep -B 1 -i --color=none $x | egrep --color=none "^r[0-9]+ \|.*lines$" | awk '{print $1}' | sed 's/^r//g'

ノート:

  • x検索文字列を含む変数xで、コマンドの 2 つの場所で使用されます。
  • シェル自体で変数として使用するxには、コマンド全体を 1 行 (から) に配置する必要がありますx=".."; svn log ... sed '...'。セミコロン;を使用して、同じ行の複数のコマンドを区切ることができます。
  • 例では--limit 10、ログエントリの数を制限し、それを変更し、必要に応じて他のsvn logパラメーターを使用しました。を使用--limit 10すると、検索が最新の 10 件のログ エントリに制限されます。
于 2013-05-10T17:16:54.080 に答える
0

助けてくれてありがとう!! これは私のために働いた:

svn log $URL --stop-on-copy | grep -B 2 $STRING | grep "^r" | cut -d"r" -f2 | cut -d" " -f1

Use "--stop-on-copy" or "--limit" options depending on the requirement.
于 2013-05-13T18:27:48.850 に答える