可能有不止一种方法来问这个问题,所以这里是对问题的解释。 我当时在做主人,做了一些事情,然后决定暂时搁置这项工作。 我支持了一些提交,然后从我开始我的垃圾工作之前分支。 实际上这工作得很好,我现在有一个不同的分支作为我的主要发展分支。 我想知道如何能够改变事情,所以我再次在主人的工作,但它没有我的垃圾工作,并表示工作是在不同的分支。 一些方法可以被问到/解决:我如何重命名我的主分支到其他东西,然后重命名其他东西掌握? 我如何备份主,然后导致我已经备份的所有提交到不同的分支? 感谢所有(快速)答案! 他们都很好。
我正在使用Dropbox来同步一个git仓库,但现在当我尝试push我得到一个错误: fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's conflicted copy 2012-10-07)' 所以,Dropbox似乎发现了一个冲突并创build了一个副本。 好吧,没问题,所以我删除了冲突的文件。 尽pipe如此,获得上面的git错误。 $ git checkout master M index.html Already on 'master' $ git add . $ git commit -a -m "Cleanup repo" [master ff6f817] Cleanup repo 1 file changed, 5 insertions(+), 5 deletions(-) $ git push fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's […]
我正在使用中间Git存储库镜像远程SVN存储库,人们可以从中克隆和工作。 中间存储库的上游SVN每晚重新分配主分支,我们正在开发function分支。 例如: remote: master local: master feature 我可以成功将我的function分支推回到远程,并最终达到我的预期: remote: master feature local: master feature 然后我重新设置分支来跟踪远程: remote: master feature local: master feature -> origin/feature 一切都很好。 我想从这里做的是重新分配function分支到远程的主分支,但我想从我的本地机器做到这一点。 我希望能够做到: git checkout master git pull git checkout feature git rebase master git push origin feature 使远程function分支保持与远程主机的最新状态。 但是,这种方法会导致Git抱怨: To <remote> ! [rejected] feature -> feature (non-fast-forward) error: failed to […]
我试图做一个本地回购行为作为远程与我的个人电脑上的另一个本地回购名称bak ,使用以下: git remote add /home/sas/dev/apps/smx/repo/bak/ontologybackend/.git bak 这给出了这个错误: fatal: '/home/sas/dev/apps/smx/repo/bak/ontologybackend/.git' is not a valid remote name 我试图同步两个本地回购,其中一个configuration为另一个远程名为bak ,然后发出git pull bak 。 什么是最好的办法呢? 编辑: 对不起,傻我,我刚刚意识到远程添加应该是: git remote add bak /home/sas/dev/apps/smx/repo/bak/ontologybackend/.git 远程的名字在地址之前 。
我似乎无法摆脱Git子模块中未跟踪的内容。 运行git status产生: #在分支主机上 #未进行提交的更改: #(使用“git add …”更新将提交的内容) #(使用“git checkout – …”放弃工作目录中的更改) #(提交或放弃子模块中未跟踪或修改的内容) # #修改:捆绑/ snipmate(未跟踪的内容) #修改:捆绑/环绕(未跟踪的内容) #修改:捆绑/尾随空白(未追踪的内容) #修改:捆绑/ zencoding(未跟踪的内容) # 没有更改添加到提交(使用“git add”和/或“git commit -a”) 添加–ignore-submodules参数隐藏这些消息; 但是我想知道是否有办法以更合适的核心方式去除这些污垢。
我有一个分支(本地和远程)已成为过时的Git存储库。 我想把这个分支与master分支进行更新,但我不知道如何做到这一点。 也可能会有很多合并冲突。 如何将这个过期的分支带到或更新到与主分支相同的状态?
有时会有一些更改的文件以及一些新的,删除和/或重命名的文件。 在做git diff或者git-log我想省略它们,所以我可以更好地发现修改。 实际上,列出没有内容的新文件和删除文件的名称是最好的。 对于“旧”更名为“新”,我想select“旧”和“新”之间的区别。
我按照说明将我的~/.ssh/id_rsa.pub上传到了Bitbucket的SSH密钥 ,但是Git在每次操作(例如git pull )时仍然要求我input密码。 我错过了什么? 这是一个私人存储库(另一个人的私人存储库的叉),我克隆它是这样的: git clone git@bitbucket.org:Nicolas_Raoul/therepo.git 这是我的本地.git/config : [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git [branch "master"] remote = origin merge = refs/heads/master 在具有相同公钥的相同环境中,Git上的Git工作正常。 .ssh是rwx—— .ssh/id_rsa是-rw——- .ssh/id_rsa.pub是-rw-r–r–
我正在使用capistrano部署RoR应用程序。 代码库在git仓库中,分支被广泛用于开发。 Capistrano使用deploy.rb文件进行设置,其中一个是从中部署的分支。 我的问题是这样的:比方说,我从主创build一个新的分支A. 部署文件将引用master分支。 我编辑,所以可以部署到testing环境。 我完成了该function的工作,并将分支A合并到master中 。 由于来自A的deploy.rb文件是新鲜的,所以它被合并,现在主分支中的deploy.rb引用A。 时间再次编辑。 这是很多看似不必要的手动编辑 – 参数应该始终与当前分支名称匹配。 最重要的是,很容易忘记每次编辑设置。 什么是自动化这个过程的最好方法? 编辑:原来有人已经做了我所需要的 : 今天早上我有机会将git仓库的一个分支部署到一个登台服务器上,但是却没有想到怎么做。 通过Capistrano源代码的快速search显示,我可以在我的部署脚本中使用set :branch "branch_name" 。 我试了一下,它的工作。 然后我想我需要在我所有的分支上做类似的改变。 当然,我是一个懒惰的草皮,并想知道是否没有更好的方法。 如果你不熟悉git,那么git branch命令的输出就是一个分支列表,其中有一个星号标记了你的本地机器上当前签出的分支。 例如: > git branch * drupal_authentication fragment_caching master 所以,我想,如果我只是parsing输出,并search标记为当前的分支: set :branch, $1 if `git branch` =~ /\* (\S+)\s/m 现在,我可以从单个共享的部署脚本部署本地机器上的任何分支。
我的.gitignore文件由于某种原因无法正常工作,并且没有任何Googlesearchfunction能够修复它。 这是我有什么: *.apk *.ap_ *.dex *.class **/bin/ **/gen/ .gradle/ build/ local.properties **/proguard/ *.log 它在目录master ,这是我的git回购。 我正在运行Git 1.8.4.2,因为我在运行OSX 10.8.6的MacBook上。