Cmder:如何在另一个别名中使用别名?
Cmder : how to use an alias in another alias?
我会在 Cmder 的另一个别名中使用一个别名。
我有一个很好的别名(第一个)到一个大命令,我会在另一个(第二个)中使用它:
mergelocdist=git fetch origin --prune --verbose && git checkout && git merge --ff-only --verbose origin/ || git rebase --preserve-merges --verbose origin/
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=
local merge_branch=
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)'
我希望他能帮到你,如果你需要任何澄清,请告诉我。
我会在 Cmder 的另一个别名中使用一个别名。
我有一个很好的别名(第一个)到一个大命令,我会在另一个(第二个)中使用它:
mergelocdist=git fetch origin --prune --verbose && git checkout && git merge --ff-only --verbose origin/ || git rebase --preserve-merges --verbose origin/
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=
local merge_branch=
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)'
我希望他能帮到你,如果你需要任何澄清,请告诉我。