Questions tagged «git-rebase»

使用git-rebase命令,您可以从一个分支获取更改,然后在另一个分支的顶部重播它们。

30
从Git中的分支删除提交
我想知道如何删除提交。 通过delete,我的意思是好像我没有进行该提交一样,并且将来进行推送时,所做的更改将不会推送到远程分支。 我读了git help,我认为我应该使用的命令是git reset --hard HEAD。它是否正确?
3230 git  git-rebase  git-reset 

17
撤消git rebase
有人知道如何轻松撤消git rebase吗? 想到的唯一方法是手动进行操作: git签出两个分支的提交父对象 然后从那里创建一个临时分支 手动选择所有提交 用手动创建的分支替换我重新建立基础的分支 在我目前的情况下,这是可行的,因为我可以轻松地发现两个分支的提交(一个是我的东西,另一个是我同事的东西)。 但是,我的方法给我的印象是次优且容易出错(例如,我刚刚使用自己的两个分支进行了重新基准化)。 有任何想法吗? 澄清:我说的是在重新部署一堆提交时进行的重新部署。不只是一个
3177 git  rebase  git-rebase  undo 


11
Git工作流程和变基与合并问题
我已经在与另一个开发人员的项目中使用Git几个月了。我在SVN方面拥有多年的经验,所以我想我为这段感情带来了很多麻烦。 我听说Git非常适合分支和合并,到目前为止,我只是看不到它。当然,分支是非常简单的,但是当我尝试合并时,一切都会陷入困境。现在,我已经习惯了SVN,但是在我看来,我只是将一个低于标准的版本控制系统换成了另一个。 我的伴侣告诉我,我的问题源于我想要合并Willy-nilly的愿望,在许多情况下,我应该使用rebase而不是合并。例如,这是他制定的工作流程: clone the remote repository git checkout -b my_new_feature ..work and commit some stuff git rebase master ..work and commit some stuff git rebase master ..finish the feature git checkout master git merge my_new_feature 本质上,创建一个功能分支,始终将其从master转移到master,然后从分支合并回到master。需要注意的重要一点是,分支始终位于本地。 这是我开始的工作流程 clone remote repository create my_new_feature branch on remote repository git checkout -b …

7
如何使用远程主服务器重新建立本地分支
我有一个从远程存储库的master分支克隆的项目remote_repo。我创建一个新分支,然后提交该分支。其他程序员被推送到remote_repomaster分支。 现在,我需要将分支RB重新设置为remote_repomaster。 这个怎么做?键入什么命令到终端?
929 git  clone  git-rebase 

12
如何挑选多个提交
我有两个分支。提交a是一个头,而其他有b,c,d,e和f之上a。我想移动c,d,e和f第一支没有提交b。使用樱桃挑选很容易:将第一个分支逐个签出c,f然后将第二个分支重新建立到第一个分支上。但有什么办法可以摘樱桃所有c- f在一个命令? 这是该场景的直观描述(感谢JJD):

18
如何从Git存储库中的提交历史记录中删除/删除大文件?
有时,我将DVD-rip放入一个网站项目中,然后漫不经心git commit -a -m ...,然后,回购协议被激增了2.2次。下次我进行一些编辑,删除视频文件并提交所有内容,但是压缩文件仍在历史记录中。 我知道我可以从这些提交开始分支,并将一个分支重新建立到另一个分支。但是,我应该怎么做才能将2个提交合并在一起,以使大文件不显示在历史记录中,并在垃圾回收过程中清除?




2
git的“ rebase --preserve-merges”到底做了什么(为什么?)
Git的命令文档rebase非常简短: --preserve-merges Instead of ignoring merges, try to recreate them. This uses the --interactive machinery internally, but combining it with the --interactive option explicitly is generally not a good idea unless you know what you are doing (see BUGS below). 那么当您使用时实际上会发生什么--preserve-merges呢?它与默认行为(没有该标志)有何不同?“重新创建”合并是什么意思,等等。
355 git  git-rebase 

9
您的分支比“源/主”提前3次提交
我在跑步时得到以下信息 git status Your branch is ahead of 'origin/master' by 3 commits. 我在其他文章上已经读过解决此问题的方法,git pull --rebase但是到底是什么变基了,我会丢失数据还是与master同步的简单方法?
354 git  git-rebase 

2
如何在Git重新设置冲突的中间获取“他们的”更改?
我有冲突的分支,branch2从branch1分支。 假设在branch2基于current的基础上branch1,在解决冲突的同时,我决定按原样使用“他们的”(即)文件的一部分(不是全部)branch1。我怎么做? 我试过了: git checkout branch1:foo/bar.java fatal: reference is not a tree: TS-modules-tmp:foo/bar.java git checkout refs/heads/branch1:foo/bar.java fatal: reference is not a tree: refs/heads/TS-modules-tmp:foo/bar.java
349 git  rebase  git-rebase 

30
git rebase:“错误:无法统计'文件':权限被拒绝”
我正在使用git,先进行一次小的提交,再进行一次大的提交。我决定git rebase在推送之前先将两个提交压缩在一起。(我以前从未做过。) 所以我做了: git rebase -i HEAD~2 这给了我编辑器,在这里我选择了较早的提交,并压缩了较晚的提交。当我保存时,git说: 错误:无法统计“ 文件名 ”:权限被拒绝 无法将sha1应用于以后的提交 ... 该提交的初始文本行 现在: 我这样做时都不会出现任何提交git log。 git status 告诉我我“当前不在任何分支机构”。 一个文件被列为已修改文件并在索引中,而两个文件被列为未跟踪文件。我的第一次提交只有一个文件(我认为),而第二次提交有很多文件。 发生了什么!?我如何解决它?
342 git  git-rebase 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.