CソースコードまたはMakefileに自分のプロジェクト(ファイルリビジョンではない)のSVNリビジョンを含めるには? SVN bookからプロジェクトのSVNリビジョンをCソースコードに組み込む
5
A
答えて
8
私たちは、メイクファイルに次のような行を使用します。
メイク変数に作業コピーのリビジョン番号を格納REPO_REV := $(shell svnversion -n)
。これをCコードで使用するには、メイクファイルにその値を使用してコンパイラのコマンドラインにマクロを定義させることができます(gccの場合は-DREPO_REV=$(REPO_REV)
など)。
4
:
新規ユーザーは、多くの場合、
$Rev$
キーワードがどのように機能するかで混乱しています。リポジトリには、全体的に増加するリビジョン番号が1つあるため、多くの人が$ Rev $キーワードの値に反映されるのはこの番号であると想定しています。しかし、$Rev$
は、最後に更新されたリビジョンではなく、ファイルが変更された最後のリビジョンを表示するように展開されます。これを理解すると混乱は解消されますが、Subversionのキーワードをサポートしなければ、自動的にグローバルリビジョン番号をファイルに取り込むことはできますか?これを行うには、外部処理が必要です。 Subversionには、この目的のために設計された
svnversion
というツールが付属しています。作業コピーをクロールし、見つかったリビジョンを出力として生成します。このリビジョン情報をファイルに埋め込むために、このプログラムといくつかの追加ツールを使用することができます。svnversion
の詳細については、第9章「Subversion完全リファレンス」の“svnversion—Subversion Working Copy Version Info”を参照してください。
関連する問題
- 1. ソースコードにSVNリビジョン番号を含める
- 2. QuickDialogをXcode 4.2プロジェクトに組み込む
- 3. EclipseプロジェクトにDerbyを組み込む?
- 4. 親プロジェクトをMavenリアクタビルドに組み込む
- 5. GPLプロジェクトにパブリックドメインコードを組み込む
- 6. githubプロジェクトをワードプレスプラグインに組み込む
- 7. プロジェクトにアンドロイドプロットモジュールを組み込む方法
- 8. MVVMに続いてC#.NETプロジェクトにlog4netラッパークラスを組み込む
- 9. あるプロジェクトのソースファイルを別のプロジェクトに組み込むには?
- 10. あるプロジェクトのCss Intellisenseを別のプロジェクトに組み込む
- 11. PHPにASP.NET(C#)を組み込む
- 12. ファイル/モジュールをC++に組み込む
- 13. C#プロジェクトでCastle ActiveRecordアセンブリを組み込む方法
- 14. xmlの読み込み/プロジェクトへの組み込み - C#
- 15. 組み込み関数のPHPソースコード
- 16. 別のモジュールに組み込みアセンブリを組み込むこと
- 17. Haskellで組み込み関数の実装コード/ソースコードを読むには?
- 18. bash組み込み関数bashソースコード
- 19. 別のディレクトリのMaven製品をプロジェクトのdirectoyに組み込む
- 20. Selenium SelBlocksプラグインをカスタムSeleniumベースのC#プロジェクトに組み込む方法は?
- 21. Objective Cプロジェクトへの静的C++ライブラリの組み込み
- 22. オープンソースのJniLibを独自のAndroidプロジェクトに組み込む
- 23. 複数のプロジェクトを1つのVSTSソリューションに組み込む
- 24. Foundationを組み込むときにobjective-cプロジェクトを構築できない
- 25. プラグインユニティゲームを既存のXcodeプロジェクトに組み込む
- 26. サードパーティのネイティブLibをAndroid Studioプロジェクトに組み込む
- 27. 既存のaspnetcoreプロジェクトに新しいadmin-templateを組み込む
- 28. QTライブラリを別のQTプロジェクトに組み込む
- 29. Swift Package Managerを既存のXcodeプロジェクトに組み込む方法
- 30. AQGridViewを1つのプロジェクトに組み込む方法は?