私はGitでMaven 3.0.3を使用しています。私は統合ツール(Bamboo)を使用してGitのコードをディレクトリにチェックアウトします。このツールは、Mavenを使用して標準ビルドライフサイクル(コンパイル、テスト、デプロイ)を実行します。私が望むのは、Mavenのデプロイメントが成功した場合、Gitでチェックアウトされているコードのバージョンにタグを付けることです。 Mavenからこれをどうすればできますか?あなたが提供できるサンプル設定は、非常に高く評価されています。Mavenを使って、Git:私のコードの最新バージョンにタグを付けるには?
9
A
答えて
5
maven scm pluginを使用してください。関連しているはずのtag functionality in advanced featuresを参照してください。
gitサポートはそのままでは表示されないので、maven-scm-provider-gitexeに依存する必要があります。また、plexus exception issueを克服するには、plexusのそれ以降のバージョンにも依存関係を追加する必要があります。
これが私の仕事です:
<project>
<scm>
<connection>scm:git:https://[email protected]/my-project.git</connection>
<developerConnection>scm:git:https://[email protected]/my-project.git</developerConnection>
</scm>
<!-- snip -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-gitexe</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<version>1.0</version>
<configuration>
<tag>test</tag>
<connectionType>connection</connectionType>
</configuration>
<executions>
<execution>
<id>tag</id>
<phase>deploy</phase>
<goals>
<goal>tag</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- snip -->
</project>
2
のmaven-リリース - プラグインがあなたのためにこれを行うことができます - ここでは例を参照してください。http://maven.apache.org/plugins/maven-release-plugin/examples/prepare-release.html
0
を私は「小さなオープンソースプロジェクトをお勧めしますQuickTagと呼ばれ、VCSのカップルで動作します - https://code.google.com/p/quicktag-maven-plugin。プラグインを追加すると、ビルド情報を含む静的フィールドを含むJavaクラスが生成されます。 maven-リリース - プラグインだけSCMを宣言する必要が
0
:から
以上を準備します
<scm>
<url>https://github.com/username/repoName</url>
<connection>scm:git:git://github.com/username/repoName.git</connection>
<developerConnection>scm:git:[email protected]:username/repoName.git</developerConnection>
<tag>HEAD</tag>
</scm>
はGitのSSHキー
https://help.github.com/articles/generating-ssh-keys/
と実行MVNのリリースを生成https://github.com/kevinsawicki/github-maven-example
関連する問題
- 1. GITで1つのファイルにタグを付けるには
- 2. は、私は次のようにそれぞれがタグ付けされた私のリポジトリ内に2つのバージョンが...持っていると仮定「gitのログ」
- 3. Mavenに特定のプラグインの最新バージョンを使用させるには?
- 4. リモートgitの最新のタグのリストを取得するには?
- 5. eclipseを使ってapkitバージョンにgitビルドバージョン番号を最も効率的に結びつける方法は?
- 6. スクリプト/タグを使用してIE Docモードを最新バージョンに更新します。
- 7. カスタマイズされたタグを使ってトレーニングセットにタグを付ける手
- 8. Gitを最新バージョンに更新する(Mac)
- 9. バワーを使って最新の(タグなし)レポ状態をインストールするには?
- 10. Mercurial、古いバージョンのファイルにタグを付ける方法
- 11. 私はGITにいるタグ
- 12. 生成されたコードにタグを付けるには
- 13. Gitのタグ付けとレールがgemfile
- 14. Gitでsvnのタグ付けに似た何かを実行するには?
- 15. gitを使って特定のバージョンのLinuxソースコードに切り替えるには?
- 16. 私のPHPコードでhslと関数を使った色付け
- 17. タグ付きのコミットをgitのリモートブランチにプッシュするには?
- 18. リモートgitリポジトリをクローン化せずにタグを付けよう
- 19. Phingを使用してリポジトリから最新のGitタグを取得
- 20. Git SVNを使ってブランチだけを追跡するには?
- 21. PythonのGit Hookを使ってGitリポジトリを更新する
- 22. 私はGCCの最新バージョンをコンパイルしました。 CLionをその場所に向けるには?
- 23. フォトアルバムの画像にタグを付ける
- 24. これは私にとって最高のgitワークフローモデルですか?
- 25. JavaScriptを使ってペーストビンにテキストを貼り付けるには
- 26. <a href>タグをC#コード内に貼り付ける
- 27. NLTK(posタグ付け)を使って動詞の無限型を得る方法
- 28. Mavenを使ったバージョン管理
- 29. install4j-maven-pluginの最新バージョンとは何ですか?
- 30. はHERESに私のコードをタグ
COol、これは私が欲しいものですが、バックツーバックで実行すると、2回目に "[ERROR] fatal:tag 'qa_release'が既に存在します。私は別の質問としてこれを開く必要があるかもしれません。 – Dave
はい、タグ名には何か動的(プロパティ)が必要です。この例では静的です。 – eis
最新のタグをコマンドラインパラメータとして指定できる場合は、 $ {parameter.version} を使用して、-Dparameter.version = v1.2を使用してmavenを実行すると使用できます。 mavenプラグインによる自動生成が必要な場合は、追加のロジックが必要です。 –
eis