我有两个分支.提交a是一个头,而其他有b,c,d,e和f之上a.我想移动c,d,e和f第一支没有提交b.使用樱桃挑选很容易:结帐第一个分支樱桃 - 一个接一个c地挑选f第二个分支到第一个.但有没有办法挑选所有c- f一个命令?
这是场景的直观描述(感谢JJD):

从git-merge的手册页中,您可以使用许多合并策略.
resolve - 这只能使用3向合并算法解析两个头(即当前分支和你从中拉出的另一个分支).它试图仔细检测纵横交错的合并模糊,并且通常被认为是安全和快速的.
递归 - 这只能使用3向合并算法解析两个磁头.当有多个可用于3向合并的共同祖先时,它会创建共同祖先的合并树,并将其用作3向合并的参考树.据报道,这可以减少合并冲突,而不会因为从Linux 2.6内核开发历史记录中进行的实际合并提交而导致错误合并.此外,这可以检测和处理涉及重命名的合并.这是拉动或合并一个分支时的默认合并策略.
章鱼 - 这解决了两个以上的案例,但拒绝进行需要手动解决的复杂合并.它主要用于将主题分支头捆绑在一起.这是拉动或合并多个分支时的默认合并策略.
我们的 - 这解决了任意数量的头,但合并的结果始终是当前的分支头.它旨在用于取代侧枝的旧发展历史.
子树 - 这是一个修改后的递归策略.当合并树A和B时,如果B对应于A的子树,则首先调整B以匹配A的树结构,而不是读取相同级别的树.这种调整也是对共同的祖先树进行的.
我什么时候应该指定不同于默认值的东西?哪些场景最适合?
我是git的新手,我正在努力理解壁球和篮板之间的区别.根据我的理解,你做一个篮板时做一个壁球.
我在这里看到了一个问题的答案,有助于在git中恢复已删除的文件.
解决方案是
git checkout <deleting_commit>^ -- <deleted_file_path>
Run Code Online (Sandbox Code Playgroud)
插入符(^)的作用是什么?我在其他地方看到它在git中做了非常有用的事情.这很神奇.请有人为我破坏它并告诉我它的作用?
我想使用git revert回滚到提交,所以我可以保留历史记录.有没有更简单的方法来执行此操作然后为我想要还原的每个提交哈希运行git revert?有没有更快的方法从特定提交一直恢复到另一个提交哈希?
在手册页上,他们声明你可以做这样的事情,git revert -n master~5..master~2但是当我尝试这样做时,我得到了这个错误:fatal: Cannot find 'master~5..master~2'
在过去的几个月里,我们一直在工作中松散地跟踪 git flow,但遇到了漫长的 QA 等待问题。
这是我们的流程:
不幸的是,客户有时可能需要长达数周的时间来批准一项功能。这可能是由于积压、内容创建、人员流动等原因。
但是,与此同时,新功能可能已合并到开发中并推送到开发服务器进行审批。假设第二个功能获得批准并需要尽快部署(当然)。我如何在不带第一个功能的情况下从 dev 中获得第二个功能?
我只是从Git开始,我有一些东西,我需要扭转到以前的提交.我可以在本地做这个没问题.
git reset --hard hashcode(或使用sourcetree)
然而,当我尝试推送到bitbucket时,souretree给了我一个错误,直到我拉下先前的提交,然后我回到了我开始无法恢复到之前的commit.l
如何在本地恢复到先前的提交,然后推送到bitbucket覆盖并删除在我恢复到之后的所有提交?
错误消息是:
git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin Development:Development
Pushing to git@bitbucket.org:Username/project.git
To git@bitbucket.org:Username/project.git
! [rejected] Development -> Development (non-fast-forward)
error: failed to push some refs to 'git@bitbucket.org:Username/project.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' in 'git push --help' for details.
Run Code Online (Sandbox Code Playgroud) git ×7
git-rebase ×2
merge ×2
cherry-pick ×1
git-commit ×1
git-flow ×1
git-merge ×1
rebase ×1
squash ×1