草庐IT

git rebase 和 git push : non-fast forward, 为什么要用?

我有一个分支,它应该对其他贡献者可用,并且应该不断地与master保持同步。不幸的是,每次我执行“gitrebase”然后尝试推送时,都会导致“非快进”消息和推送失败。在这里推送的唯一方法是使用--force。这是否意味着如果我的分支公开并且其他人正在处理它,我应该使用“gitmerge”而不是rebase? 最佳答案 关于git工作原理的一些说明(非技术性):当你rebase时,git接受有问题的提交,并在干净的历史记录之上“重新提交”它们。这是为了防止历史显示:Description:tree->mywork->merge->m

git - 执行 git push 时出现 "diff.renamelimit variable"警告

我将本地提交推送到远程git服务器并收到以下警告消息:remote:warning:onlyfoundcopiesfrommodifiedpathsduetotoomanyfiles.remote:warning:youmaywanttosetyourdiff.renamelimitvariabletoatleast19824andretrythecommand.但实际上我已经将diff.renamelimit设置为0(我认为零意味着无限,对吧?)。$gitconfig--list...diff.renamelimit=0那么我该怎么做才能避免这个警告呢?谢谢。

git - git push origin HEAD 是什么意思?

我发现,在officialguide:gitpushoriginHEADAhandywaytopushthecurrentbranchtothesamenameontheremote.但是,我不清楚命令的含义。为什么会有这样的效果?我没能找到答案(thisquestion似乎解决了这个问题,但标题具有误导性)。 最佳答案 HEAD指向当前分支的顶部。git可以从中获取分支名称。所以它与:gitpushoriginCURRENT_BRANCH_NAME但您不必记住/键入当前分支名称。它还可以防止您意外推送到错误的远程分支。如果你想推送

git - "git push heroku master"如何知道要推送到哪里以及如何推送到不同的仓库?

当推送到托管在Heroku上的存储库时,必须执行以下命令:gitpushherokumasterheroku和master在此命令中表示什么?git如何知道要推送到哪里?(git路径)此外,我不知道我可以使用herokurename来重命名应用程序,所以之前,假设我使用的是应用程序名称trytryheroku现在我使用herokucreatereal-thing但如果我推送,它仍然推送到trytryheroku...有没有办法推送到真实的东西? 最佳答案 “heroku”部分是您设置的远程名称-当您第一次创建heroku应用程序时,

git - git push.default=current 和 push.default=upstream 有什么区别?

git-config的手册页列出了push.default的这些选项:nothing-donotpushanything.matching-pushallmatchingbranches.Allbrancheshavingthesamenameinbothendsareconsideredtobematching.Thisisthedefault.upstream-pushthecurrentbranchtoitsupstreambranch.tracking-deprecatedsynonymforupstream.current-pushthecurrentbranchtoabra

git - 尝试 push SourceTree 时出现 "Updates were rejected because the tag already exists"

尝试通过源代码树推送时,出现以下错误:git-cdiff.mnemonicprefix=false-ccore.quotepath=false-ccredential.helper=sourcetreepush-v--tagsoriginrefs/heads/master:refs/heads/masterPushingtohttps://user@github.com/repo.gitTohttps://user@github.com/repo.git=[uptodate]master->master...![rejected]example_tag->example_tag(alr

git push heroku master 权限被拒绝(公钥)。致命的 : The remote end hung up unexpectedly

请原谅我有点沮丧,因为Heroku使用SO作为他们的客户支持(我认为至少可以说是劣质的),我会尽量控制这种情况。在过去的五个小时里,我一直在尝试发布一个应用程序,但key总是出问题。我已经阅读了数十篇文章,并尝试了一个接一个的提示,试图找出Heroku在愚蠢、完全不透明的过程中哪里搞砸了。我的用例并没有那么困难:我为我的heroku应用程序创建了一个新的key对。我已将该key设置为我的key:>herokukeys===travis@xxxx.comKeysssh-rsaAAAAB3NzaC...avOqfA7ZBdtravis@xxxx.com我可以毫无问题地登录并“创建”一个应用

git push 与远程标签同名的本地分支

我正在尝试将一个新的本地分支product-0.2推送到已经存在同名标签的远程分支(但分支本身不存在)gitpush-v--tags--set-upstreamoriginproduct-0.2:product-0.2Pushingtohttps://****@github.com/mycompany/product.giterror:srcrefspecproduct-0.2matchesmorethanone.error:failedtopushsomerefsto'https://****@github.com/mycompany/product.git'同理:gitpushor

git - 'origin'中的 'git push origin master'是什么意思

当我运行时:gitpushoriginmaster...在此上下文中,origin的含义是什么? 最佳答案 git有一个“远程”的概念——这些就像一个存储库的简单昵称,所以你不必每次都使用它的完整URL来引用另一个存储库。origin就像任何其他远程一样,但是您经常看到它,因为当您第一次克隆存储库时,gitclone将默认设置一个名为origin的远程引用您从中克隆的URL。如果您执行gitremote-v,它将显示您在本地存储库中设置的所有Remote,以及它们引用的URL。(你会发现它比我上面说的要复杂一点,因为远程可以引用不同

Git push 不会做任何事情(一切都是最新的)

我正在尝试更新GitHub上的Git存储库。我做了一堆更改,添加它们,提交然后尝试执行gitpush。响应告诉我一切都是最新的,但显然不是。gitremoteshoworigin响应我期望的存储库。为什么当存储库中有不可见的本地提交时Git告诉我存储库是最新的?[searchgraph]gitstatus#Onbranchdevelop#Untrackedfiles:#(use"gitadd..."toincludeinwhatwillbecommitted)##Capfile#config/deploy.rbnothingaddedtocommitbutuntrackedfilesp