我通过将它们应用于夜间构建来使用标签.然后,我想用输出describe --tags --match <latest tag>告诉我每晚构建我的图像有多远.这是用于QA测试.
我刚刚在比当前标记更旧的克隆中遇到错误.我运行了git fetch --tags,所以我在git tag输出中看到了标签,但是当我运行时git describe --tags --match <tagname>,我得到了fatal: No tags can describe <head sha1 version number>.此时我无法执行git pull来更新工作区.为什么会发生这种情况并且有解决方法?非常感谢
在输出中git remote show origin,我看到这条消息:
warning: more than one branch.main_int.remote
Run Code Online (Sandbox Code Playgroud)
一个更典型的例子是:
warning: more than one branch.master.remote
Run Code Online (Sandbox Code Playgroud)
这是什么意思?这是不好的,如果它不好,我该如何解决呢?
我们正在使用子模块,我们是git的新手.
我们经常看到子模块本身的合并冲突,没有文件冲突,只有子模块.输出中列出了多个版本git submodule summary.我们通过git add <submodule>在超级项目中运行来解决它们.
但是今天我们让开发人员在以这种方式解决冲突时失去了子模块的提交.
运行git add会选择远程版本吗?不应该合并子模块的内容吗?如果她在子模块中进行了更改并提交了它们(我看到了),那么为什么在执行拉动并解决冲突后该提交会消失?
我想将ivy.default.ivy.user.dir设置为默认值以外的其他值${user.home}/.ivy2.我可以在命令行上执行此操作
ant -Divy.default.ivy.user.dir=${WORKSPACE}/IVYCACHE.但是,我想在没有命令行arg的情况下设置它.我尝试在build.xml,my.xml和myvysettings.xml中设置此属性.奇怪的是,它似乎将默认缓存设置为此路径,但是详细输出表明user.dir没有默认设置,因此它使用${user.home}/.ivy2路径.
这是我在build.xml文件中设置user.dir时的输出.奇怪的是,它将默认缓存设置为我用于user.dir的路径
[ivy:buildlist] No ivy:settings found for the default reference 'ivy.instance'. A default instance will be used [ivy:buildlist] Loading jar:file:/usr/local/ant/lib/ivy-2.2.0.jar!/org/apache/ivy/core/settings/ivy.properties [ivy:buildlist] searching settings file: trying /home/hudson/.hudson/jobs/Next_CI/workspace/ivysettings.xml [ivy:buildlist] searching settings file: trying /home/hudson/.hudson/jobs/Next_CI/workspace/ivyconf.xml [ivy:buildlist] searching settings file: trying ivysettings.xml [ivy:buildlist] searching settings file: trying ivyconf.xml [ivy:buildlist] no settings file found, using default... [ivy:buildlist] :: Ivy 2.2.0 - 20100923230623 :: http://ant.apache.org/ivy/ :: [ivy:buildlist] jakarta commons httpclient not found: using jdk url handling [ivy:buildlist] :: loading …
哪一个占用更多磁盘空间?你如何跟踪错误修复(我们正在使用Jira)?您如何知道哪个分支或存储库有错误修复?存储库vs分支必须有其他优点/缺点吗?
我在一个名为/ private/gmills的克隆中,我跑了git merge main_int.
我看到另一台机器上的其他用户对另一个克隆的引用.这是什么意思?
我只配置了一个远程配置,它没有指向另一个克隆或机器.
警告信息 :
warning: Failed to merge submodule projects/kernel (multiple merges found)
1b64e534e162316a124f98edef6584d7ead1c563: > Merge branch 'main_int' into main_int_infra_xlp
fe1ffcf1f49d8741e03710837fc6e1179b1cf222: > merge from main_int workspace:/private/sriniv/projects/kernel on build02
Run Code Online (Sandbox Code Playgroud)
有关远程存储库的信息:
git remote -v
origin git@server:flt/root.git (fetch)
origin git@server:flt/root.git (push)
Run Code Online (Sandbox Code Playgroud) 我尝试了以下命令,但失败了.
git push origin :next
remote: error: denying ref deletion for refs/heads/next
To blah.git
! [remote rejected] next (deletion prohibited)
error: failed to push some refs to 'blah.git
Run Code Online (Sandbox Code Playgroud)
我正在使用gitolite,并且在钩子中找不到任何此错误消息.如何禁用它以便我可以删除或重命名此远程分支?当我运行git branch -r -d origin/next时,它似乎消失了,但是下一个git pull将它带回来.
我的印象是标签会像提交一样,如果我有一个基于旧提交的克隆,我不希望看到git标签输出中列出的新标签.
但是,这种假设显然是错误的.它破坏了我计划使用标签的方式.我正在使用简单的标签.其他类型的标签会在时间上有所不同吗?