我正在使用Maven JGit-Flow插件来自动执行某些发布过程。不幸的是,当我尝试使用Fragments
启动新版本时,我遇到了这个问题:
mvn jgitflow:release-start
但是我在这里看不到和没有跟踪文件(也没有主人):
[ERROR] Failed to execute goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m5.1:release-start (default-cli) on project <myProjectName>: Error starting release: Error starting release: Working tree has untracked files
任何想法Maven JGit-Flow插件如何找到未跟踪的文件?
答案 0 :(得分:2)
通过允许未跟踪的文件修复它:
<plugin>
<groupId>external.atlassian.jgitflow</groupId>
<artifactId>jgitflow-maven-plugin</artifactId>
<version>1.0-m5.1</version>
<configuration>
<pushReleases>true</pushReleases>
<allowUntracked>true</allowUntracked>
</configuration>
</plugin>
答案 1 :(得分:2)
查看.git/jgitflow.log
将显示jgitflow未找到哪些文件。在我的情况下,我发现了这一行:
GitHelper: _ -- untracked: .DS_Store _
我有一个全局gitignore文件
$ git config --get core.excludesfile
~/.gitignore_global
其中.DS_Store
被设置为排除。不幸的是,jgitflow似乎没有意识到这个设置。所以我将排除项添加到项目的.gitignore
文件中:
### Mac OSX
.DS_Store
之后mvn jgitflow:release-start
按预期工作。
答案 2 :(得分:0)
请检查所有maven生成和IDE生成的文件和文件夹。将它们添加到.gitignore
。
以下是我忽略的文件和文件夹。我正在使用maven 3和IntelliJ。以下是.gitignore
:
### IntelliJ Idea Project Files.
# IntelliJ project files
.idea
*.iml
out
gen
target/
### Java Files
*.class
# Package Files #
*.jar
*.war
*.ear
.settings
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
对于大多数人来说,如果他们没有使用IntelliJ:
,将会解决问题target/