我从远程存储库的master分支克隆了项目remote_repo.我创建了新的分支,我承诺了那个分支.其他程序员推到remote_repo了分支机构.我现在需要将我的分支RB重新绑定到remote_repomaster上.这该怎么做 ?键入终端的命令是什么?
我是Git的新手,现在我处于这种情况:
master......这是我的问题:如何使用master分支代码更新所有其他分支?
我在过去一小时内改变了一些事情,并一步一步地提交了它们,但我刚刚意识到我忘了在一些提交之前添加一个已更改的文件.
日志看起来像这样:
GIT TidyUpRequests u:1 d:0> git log
commit fc6734b6351f6c36a587dba6dbd9d5efa30c09ce
Author: David Klein <>
Date: Tue Apr 27 09:43:55 2010 +0200
The Main program now tests both Webservices at once
commit 8a2c6014c2b035e37aebd310a6393a1ecb39f463
Author: David Klein <>
Date: Tue Apr 27 09:43:27 2010 +0200
ISBNDBQueryHandler now uses the XPath functions from XPath.fs too
commit 06a504e277fd98d97eed4dad22dfa5933d81451f
Author: David Klein <>
Date: Tue Apr 27 09:30:34 2010 +0200
AmazonQueryHandler now uses the XPath Helper functions defined in XPath.fs
commit a0865e28be35a3011d0b6091819ec32922dd2dd8 <--- changed file …Run Code Online (Sandbox Code Playgroud) 我们使用git并拥有一个主分支和开发人员分支.我需要添加一个新功能,然后将提交重新设置为master,然后将master推送到CI服务器.
问题是,如果我在rebase期间遇到冲突,我不能在rebase完成后推送到我的远程开发人员分支(在Github上),直到我拉出我的远程分支.这会导致重复提交.没有冲突时,按预期工作.
问题:在rebase和冲突解决之后,如何在不创建重复提交的情况下同步我的本地和远程开发人员分支
建立:
// master branch is the main branch
git checkout master
git checkout -b myNewFeature
// I will work on this at work and at home
git push origin myNewFeature
// work work work on myNewFeature
// master branch has been updated and will conflict with myNewFeature
git pull --rebase origin master
// we have conflicts
// solve conflict
git rebase --continue
//repeat until rebase is complete
git push origin myNewFeature
//ERROR
error: failed to push some …Run Code Online (Sandbox Code Playgroud) 我想知道有没有办法阻止' git push --force'在存储库上(仅在主分支上)?
假设我有远程git存储库并执行:
git push'掌握''.有用.git push --force'到'branch-1'.有用.git push --force'掌握''.它被拒绝了.它甚至可能吗?
感谢您的任何答案和建议.
BR,Dawid.
我遇到了一个问题,我的origin/branch与我的本地分支不同步,见下文

当我尝试从我的本地"staging"分支推送到origin/staging分支时,我得到"被拒绝 - 非快进"错误.
我在Windows PC上使用带有EGit模块的Eclipse.
从另一篇文章中我看到我可以使用"git push --force origin staging"来解决我的问题,以便使用我的本地分支覆盖origin/staging分支.
但是,我没有看到EGit的选项,我也看不到如何在EGit中打开控制台来执行此操作?
有谁知道我是否可以在EGit中做到这一点?
好的 - 解决了我自己的问题.看来我在提交的问题上没有被推回原点/分期.在这里找到了关于使用"git reset XXX:without --hard" 的概述,它重置了分支标记,但保留了本地更改以供以后重新发送.
谢谢你,杰森
我看看你什么时候使用git rebase而不是git merge? .
但我想确定在这种情况下选择哪种解决方案:
我想实现一个新功能,master所以我将它分支到一个新的功能分支.
我在功能上做了10次提交,而其他人在Master上做了其他提交.
我的问题是,如果我想将我的分支与Master分开以进行测试,但我需要使用集成的新Master提交来测试它.那么,我应该将Master合并到Feature(而不是Feature to Master,它会在我的测试之前对master进行修改)或者做一个rebase?
我知道以前有人问过这个问题,但我似乎无法理解这件事......
git checkout master
git pull
git git checkout feature
git rebase origin/master
then resolve all the problems....
Try to push - not gonna happen...
Run Code Online (Sandbox Code Playgroud)
git 真的告诉我,在进行了 rebase 之后(处理 n:ths 个冲突)
我有两个选择,使用--force这似乎有风险和愚蠢。
或者pull再次处理合并冲突......并最终处于相同的情况?
error: failed to push some refs to 'ssh://git@git.zzz.com/yyy/xxx.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' …Run Code Online (Sandbox Code Playgroud) 我有一个由 master 分支中的四个文件组成的存储库:两个项目文件(顺便说一句 PHP 文件)加上一个README.md和.gitignore. 我想创建一个额外的分支,它只包含同一提交级别的两个 PHP 文件。保持这两个分支同步的最佳实践是什么,如果可能,我只想提交一次以更新我的 PHP 文件?
我之所以研究这个,是因为我想创建一个名为dist的分支,它只附带基本文件。
git ×10
git-rebase ×3
rebase ×3
git-branch ×2
git-merge ×2
egit ×1
git-commit ×1
github ×1
merge ×1
push ×1