“的别名”;git checkout主要分支机构;git合并主题“U分支”是什么;?

“的别名”;git checkout主要分支机构;git合并主题“U分支”是什么;?,git,workflow,alias,Git,Workflow,Alias,在我们的团队中,我们使用一个开发、暂存和一个主分支以及多个分支来处理问题。通过此工作流,我发现自己在做以下许多工作: 例如,在发展处: git checkout staging; git merge development 有人对此有一个简单的别名吗 应该是这样的: merge_with master 将做: git checkout master; git merge previous_branch 我应该给你一个 git thething development git merge总

在我们的团队中,我们使用一个开发、暂存和一个主分支以及多个分支来处理问题。通过此工作流,我发现自己在做以下许多工作:

例如,在发展处:

git checkout staging; git merge development
有人对此有一个简单的别名吗

应该是这样的:

merge_with master
将做:

git checkout master; git merge previous_branch
我应该给你一个

git thething development

git merge
总是在当前分支上执行,以防冲突,因此您必须首先签出临时分支

但是,如果允许使用线性历史,则可以使用
git-rebase-development-staging

正如迈克尔所说,你总是可以用化名

编辑:将此添加到。git/config将完成此操作

[alias]
    merge_to = !sh -c 'CURRENT=$(git symbolic-ref HEAD) && git checkout $1 && git merge $CURRENT' -

这就是我的意思,只是它还不起作用

branch="$(git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/')"; echo "git checkout master; git merge $branch"
首先,它找出当前分支是什么。然后它使用它来确定与哪个分支合并

所以下一件事是找出如何附加别名参数

git checkout master; git merge HEAD@{1}
您可以使用以下方式为其指定别名:

git config alias.mm '!git checkout master; git merge HEAD@{1}'

这样,
gitmm
将把您当前的分支合并到master中。

谢谢您的帮助。所有这些都不是我想要的,而是让我走上了正确的方向

我在~/.bash_登录中添加了以下内容。对于每个git存储库,“merge_to somebranch”将执行git签出somebranch;git合并以前的分支

# Git functions to quickly merge branches
# e.g. merge_to staging
function current_branch { ref=$(git symbolic-ref HEAD 2> /dev/null); echo ${ref#refs/heads/} }
function merge_to       { branch=`eval current_branch`; git checkout "$@" && git merge $branch }

我一直在这样做,尤其是在我们的一个项目中,我们有几个微妙不同的生产分支。部署修复/更新可能会使您的手指疲劳

对于所有Windows Bod:我刚刚在我的%path%中创建了一个merge.bat文件,它包含:

git checkout %1 && git merge %2 --verbose
那么我所做的就是

merge foo bar
它运行:

git checkout foo 
git merge bar --verbose

不幸的是,需要合并的分支并不总是相同的。它应该是这样的:merge_with master我将把它添加到问题中,因为这里的格式不起作用。会做:git结帐大师;我只是要一个别名。我需要将登台与开发合并。为此,我需要键入两个命令,其中一个命令就足够了:)有一个
git checkout foo 
git merge bar --verbose