gpt4 book ai didi

alias - 指挥官 : how to use an alias in another alias?

转载 作者:行者123 更新时间:2023-12-02 03:13:43 26 4
gpt4 key购买 nike

我会在 Cmder 的另一个别名中使用别名。

我有一个很好的别名(第一个)到一个大命令,我会在另一个(第二个)中使用它:

mergelocdist=git fetch origin --prune --verbose && git checkout $1 && git merge --ff-only --verbose origin/$2 || git rebase --preserve-merges --verbose origin/$2

mm=mergelocdist master master

别名在 Cmder aliases 中文件,我在 Windows 7 x64 上。

话题已经被问到 in this question ,像现在一样没有回复。

如果你回答我,也请回答这个人:)

找到 this ,似乎有什么帮助,但我不知道如何。

最佳答案

本杰:
我怀疑你现在已经找到了答案,但我看到没有人回答这个问题,所以我会的。

如果我可以对别名文件提出替代建议。看起来您正在尝试为 git 解决这个问题。

我发现在 Windows 中执行此操作的最佳方法是编辑 ~/.bashrc文件。在大多数 Windows 机器上,它会在 C:\Users\<USERNAME>\.bashrc 下.

您可以创建一个函数,例如:

function MergeLocDistFn {
local co_branch=$1
local merge_branch=$2

echo ">> Debug Command: git checkout ${co_branch}"
git checkout ${co_branch}

echo ">> Debug Command: git merge --ff-only --verbose origin/${merge_branch} || git rebase --preserve-merges --verbose origin/${merge_branch}"
git merge --ff-only --verbose origin/${merge_branch} || git rebase --preserve-merges --verbose origin/${merge_branch}
}

然后你可以在 ~/.bashrc 中创建别名文件,如下所示:
alias mergelocdist=MergeLocDistFn
alias mm='MergeLocDistFn master master'

这种方法的优点是它可以让您真正地使用该函数,并且正如我在此处展示的那样,还可以使用 echo 语句对其进行调试。

请参阅示例输出的附加图片。
example output from bashrc

另请注意,如果您更愿意在 PowerShell 提示符下执行此操作,修改 PowerShell 配置文件会更容易,请告诉我,我将向您展示如何操作。

另请注意,您还可以在 .bashrc 中为当前分支创建一个函数。这是一个示例函数:
function current_branch() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || \
ref=$(git rev-parse --short HEAD 2> /dev/null) || return
echo ${ref#refs/heads/}
}

以下是使用 current_branch 函数的示例:
alias gpush='git push -u origin $(current_branch)'

我希望他的帮助,如果您需要对此进行任何说明,请告诉我。

关于alias - 指挥官 : how to use an alias in another alias?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38351922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com