当前位置: 首页 > 面试题库 >

Maven-错误释放代码到GitHub(推送后挂起)

唐腾
2023-03-14
问题内容

我正在尝试运行mvn release:prepare目标,并且在推动之后将其挂起。知道我做错了什么吗?

[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] BUILD SUCCESSFUL
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] Total time: 8 seconds
[INFO] [INFO] Finished at: Tue Jul 13 23:54:59 PDT 2010
[INFO] [INFO] Final Memory: 55M/294M
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] Checking in modified POMs...
[INFO] Executing: cmd.exe /X /C "git add -- pom.xml"
[INFO] Working directory: C:\development\taylor\my-app
[INFO] Executing: cmd.exe /X /C "git status"
[INFO] Working directory: C:\development\taylor\my-app
[INFO] Executing: cmd.exe /X /C "git commit --verbose -F C:\Users\TAYLOR~1\AppData\Local\Temp\maven-scm-1932347225.commit pom.xml"
[INFO] Working directory: C:\development\taylor\my-app
[INFO] Executing: cmd.exe /X /C "git symbolic-ref HEAD"
[INFO] Working directory: C:\development\taylor\my-app
[INFO] Executing: cmd.exe /X /C "git push git@github.com:tleese22/my-app.git master:master"
[INFO] Working directory: C:\development\taylor\my-app
>>>> hangs here <<<<

以下是我的pom.xml的SCM部分:

<scm>
    <connection>scm:git:git://github.com/tleese22/my-app.git</connection>
    <developerConnection>scm:git:git@github.com:tleese22/my-app.git</developerConnection>
    <url>http://github.com/tleese22/my-app</url>
</scm>

...

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.0</version>
</plugin>

以下是我的.git / config:

[core]
    repositoryformatversion = 0
    filemode = true
    logallrefupdates = true
    bare = false
[branch "master"]
    remote = origin
    merge = refs/heads/master
[remote "origin"]
    url = git@github.com:tleese22/my-app.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    pushurl = git@github.com:tleese22/my-app.git

这是git show origin的结果:

$ git remote show origin
Enter passphrase for key '/c/Users/Taylor Leese/.ssh/id_rsa':
* remote origin
  Fetch URL: git@github.com:tleese22/my-app.git
  Push  URL: git@github.com:tleese22/my-app.git
  HEAD branch: master
  Remote branches:
    gh-pages new (next fetch will store in remotes/origin)
    master   new (next fetch will store in remotes/origin)
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)

$ git status
# On branch master
nothing to commit (working directory clean)

问题答案:

考虑到的来源git builtin- push.c,这意味着以某种方式,没有为maven脚本使用的本地Git存储库定义任何远程对象。

    static int do_push(const char *repo, int flags)
    {
        int i, errs;
        struct remote *remote = remote_get(repo);

        const char **url;
        int url_nr;


        if (!remote) {
            if (repo)
                die("bad repository '%s'", repo);
            die("No destination configured to push to.");
        }

如本博文所述,maven配置并非全部。

~/foo/mikeci-archetype-springmvc-webapp$ git remote add origin git@github.com:amleggett/mikeci-archetype-springmvc-webapp.git

remote add在指定maven scm参数之前,仍然需要A :

更新POM

为了使Maven有效运行,应始终确保在POM文件中包含项目VCS信息。
现在,我们已将原型添加到Git存储库,我们可以包括适当的<scm>配置:

  <scm>
   <connection>
   scm:git:ssh://github.com/amleggett/${artifactId}.git
   </connection>
   <developerConnection>
   scm:git:ssh://git@github.com/amleggett/${artifactId}.git
   </developerConnection>
   <url>
   http://github.com/amleggett/${artifactId}
   </url>
  </scm>

同一篇博客文章还添加了:

了解的每个子元素的含义很重要<scm>

  • <connection>元素定义了一个只读url和
  • <developerConnection>元素的读+写网址。

对于这两个元素,URL必须遵守以下约定:

 scm:<scm implementation>:<scm implementation-specific path>

* 最后,<url>元素内容应指向可浏览的位置,对我来说,这是GitHub存储库主页。请注意,在所有情况下,我都使用一个内插值,即我的项目artifactId。

一个方便的提示是,您可以使用来验证此配置 maven-scm-plugin
该插件通过为已配置的VCS提供一组命令映射,从而提供了“卖方”对独立VCS命令的独立访问。验证目标应确认一切正常:

~/foo/mikeci-archetype-springmvc-webapp$ mvn scm:validate
[INFO] Preparing scm:validate
[INFO] No goals needed for project - skipping
[INFO] [scm:validate {execution: default-cli}]
[INFO] connectionUrl scm connection string is valid.
[INFO] project.scm.connection scm connection string is valid.
[INFO] project.scm.developerConnection scm connection string is valid.
[INFO] --------------------------------------------------------------
[INFO] BUILD SUCCESSFUL


 类似资料:
  • 我正在努力使用github actions工作流将maven项目部署到github包中。首先,这里是我在阶段遇到的错误: (信息:我用[括号]中的一般术语取代了非必要和/或私人的具体信息) (信息:括号中的值与前面相同) 最后,我的maven项目的父pom.xml: 也许说GitHub存储库完全属于我也很重要,因此我应该拥有它的所有管理权限。 null 首先,我使用这个网站作为我的参考。 我基本上

  • 对于大多数系统错误,除内部文本信息之外,MySQL还按下面的风格显示的系统错误代码: message ... (errno: #) message ... (Errcode: #) 通过检查系统文档或使用perror工具,可以检查错误代码的意义。 perror为系统错误代码或存储引擎(表处理)错误代码打印其描述信息。 象这样调用perror: shell> perror [options] err

  • 我有一个Github repo项目,使用Github操作和一个docker文件来构建SpringBoot Java项目 我想从Github repo下载来自Github repo的定制工件包,并能够将工件上传到其中。 所以我按照配置Apache Maven用于GitHub包的链接,将该部分添加到settings.xml文件中: 为了从dockerfile构建中发布包,我在pom.xml中添加了以下

  • GitHub允许你配置你的库,让用户无法强制推送至master,但是有没有办法完全防止推送至master?我希望这样做,以便向master添加提交的唯一方式是通过GitHub pull请求UI。

  • 我已将STS更新到3.6.4版。释放当我尝试启动java项目时,我在控制台中收到以下错误消息: Fehler:Hauptklasse Files.springsource.vfabric-tc-server-Developers-2.9.3。发布。base-instance.conf.logging.propertieskonnte nicht gefunden oder geladen werd

  • 每当我试图从命令行将更改推送到远程存储库时,我都会收到以下错误: (我已经替换了org和repo名称,但它们绝对是正确的名称)。 我已检查是否具有对存储库的写入权限。我可以通过网站创建分支和写入文件,并在本地将这些更改拉回来。 我正在使用Git Credential Manager for Windows(GCM)使用github进行身份验证,gitconfig中有以下内容: 我运行的是Windo