相关疑难解决方法(0)

使用Git将我的最后一次X提交压缩在一起

如何使用Git将我最后的X提交压缩成一个提交?

git squash git-squash

3294
推荐指数
38
解决办法
147万
查看次数

Git将master合并到功能分支中

让我们说我们在git中有以下情况:

  1. 创建的存储库:

    mkdir GitTest2
    cd GitTest2
    git init
    
    Run Code Online (Sandbox Code Playgroud)
  2. 主服务器中的一些修改发生并得到提交.

    echo "On Master" > file
    git commit -a -m "Initial commit"
    
    Run Code Online (Sandbox Code Playgroud)
  3. Feature1分支主,一些工作完成:

    git branch feature1
    git checkout feature1
    echo "Feature1" > featureFile
    git commit -a -m "Commit for feature1"
    
    Run Code Online (Sandbox Code Playgroud)
  4. 同时,在主代码中发现错误并建立了修补程序分支

    git checkout master
    git branch hotfix1
    git checkout hotfix1
    
    Run Code Online (Sandbox Code Playgroud)
  5. 该错误在修补程序分支中修复并合并回主服务器(可能在拉取请求/代码审查之后):

    echo "Bugfix" > bugfixFile
    git commit -a -m "Bugfix Commit"
    git checkout master
    git merge --no-ff hotfix1
    
    Run Code Online (Sandbox Code Playgroud)
  6. feature1的开发继续:

    git checkout feature1
    
    Run Code Online (Sandbox Code Playgroud)

现在我的问题:说我需要我的功能分支中的修补程序,可能是因为那里也出现了错误.如何在不将提交复制到我的功能分支的情况下实现此目的?我想阻止在我的功能分支上获得两个与功能实现无关的新提交.如果我使用Pull请求,这对我来说尤其重要:所有这些提交也将包含在Pull Request中,并且必须进行审核,尽管已经完成(因为修补程序已经在主服务器中).

我做不到git merge master --ff-only:"致命:不可能快进,堕胎."但我不确定这是否对我有所帮助.

git feature-branch git-flow git-branch

892
推荐指数
9
解决办法
108万
查看次数

在git中,merge --squash和rebase之间有什么区别?

我是git的新手,我正在努力理解壁球和篮板之间的区别.根据我的理解,你做一个篮板时做一个壁球.

git merge rebase git-rebase squash

336
推荐指数
5
解决办法
13万
查看次数

合并后的交互式rebase /其他提交交错我的

我的典型git工作流程是在我们的主分支上创建一个功能分支,进行小型提交,同时定期从主服务器中进行合并以保持同步.

然后我在github上打开一个pull请求,当它被接受时我会删除分支.我想以交互方式更多地更改,但是当我这样做时,我会遇到合并提交和其他人的提交与我自己交错.我不确定如何/如果我可以压制那些提交或组合/挤压我的一个人?

例如,我的分支的git日志在变换时可能看起来像这样:

merge commit
someone else's commit
one of my commits
another one of my commits
another merge commit
another person's commit
one of my commits, the first one after branching
Run Code Online (Sandbox Code Playgroud)

在进行交互式rebase,压缩和重新排序提交时,我遇到了什么是可能的,什么不可能.鉴于上述工作流程,您会推荐什么?

git github rebase

14
推荐指数
1
解决办法
4323
查看次数

如何在github中将分支合并到主服务器?

我创建了一个repo和github,并将我的文件推送到它.然后有一位同事创建一个分支并进行更改.我想将分支合并到master.

我该采取什么措施?

git-merge

12
推荐指数
1
解决办法
9186
查看次数

Git:如何使用 VS Code 源代码管理将功能分支合并到 master 中?

我使用 Visual Studio 源代码管理在 Git 中创建了一个功能分支。

现在我想使用 Visual Studio Code 将功能分支合并到 master 中。

执行此操作的正确过程是什么?

git merge branch git-merge visual-studio-code

8
推荐指数
1
解决办法
7432
查看次数

如何将分支合并到主人?

我有一个本地分支有一些更改,我想将它合并到远程主.当我跑:git merge master我得到:

已经是最新的

但我仍然可以看到主人不包含新的变化.

我检查了以下问题Git合并报告"已经是最新的"虽然存在差异问题,但似乎首先不是最新的,另一方面,没有任何提示有帮助.

有什么想法或暗示吗?

git merge gitlab gitlab-ci

6
推荐指数
2
解决办法
2万
查看次数

如何压缩 Git 中的提交?

我正在尝试压缩我的提交并将我的分支合并为一个提交来掌握。这就是我正在尝试的。我切换到主分支,然后我就这样做了

git merge --squash <branch_name>
Run Code Online (Sandbox Code Playgroud)

我得到

Automatic merge went well; stopped before committing as requested
Squash commit -- not updating HEAD
Run Code Online (Sandbox Code Playgroud)

之后我承诺。但这就是我得到的

$ git commit -m "Resolved"
On branch master
nothing to commit, working tree clean
Run Code Online (Sandbox Code Playgroud)

由于某种原因,更改没有得到反映,我收到消息没有要提交的信息。我已经浏览了堆栈上的许多帖子和问题,但到目前为止没有任何帮助。

git github git-merge git-squash

5
推荐指数
1
解决办法
1万
查看次数