问题标签 [git-alias]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 如何正确使用 git 别名中的参数?
我的 .gitconfig 文件中有以下 git 别名。
我应该按如下方式使用它:
(假设 folder1 是有效的工作 git 存储库,可通过其相对路径访问)
当我在命令行中输入时,
我确实在 folder2 中获得了 folder1 的克隆,但是当我使用别名时:
我收到一个错误
谁能告诉我我错过了什么?
git - 如何在 git 中为同一命令设置多个寻呼机选项?
我希望能够根据需要使用两个不同的寻呼机启动 git diff。
我知道的唯一方法是更新 git config 并启动命令(或更新GIT_PAGER变量)。
.gitconfig 示例:
这将让我使用 cat pager 作为默认启动git diff并按需启动git diff1并使用更少的pager。
我的问题是:有没有其他方法可以做到这一点,而无需每次都更改 git config?
就像是:
bash - 如何将参数从 git 别名传递到外部脚本
我在将参数从 git 别名传递到外部 bash 脚本文件时遇到问题。目前,我的 bash 脚本文件与 .gitconfig 位于同一目录中。我计划将我所有的复杂 !f() { }
别名移到那里,以避免与所有转义和不评论作斗争。
所以我的脚本文件名为 .gitconfig.kat.aliases.script ,它看起来像这样:
配置1
在我的 .gitconfig [alias] 部分中,我有这个:
我按照这个问题的语法对外部脚本/函数进行了别名。然后,我按照这个问题的语法将参数传递给函数(上面的别名没有像建议的问题那样传递虚拟参数,下面有更多信息)。
问题是,没有虚拟参数,当我执行时git co-rb origin feature/test
,我得到以下输出:
配置2
如果我在 $@... 之后定义一个虚拟参数
co-rb = !bash -c 'source $HOME/.gitconfig.kat.aliases.script && checkoutRemoteBranch \"$@\" x'
输出是:
配置3
如果我将虚拟参数的位置更改为co-rb = !bash -c 'source $HOME/.gitconfig.kat.aliases.script && checkoutRemoteBranch x \"$@\"'
输出是:
问题: 1. 配置1 - 参数计数错误,位置参数偏移-1。1.配置2——参数计数是对的,但是位置参数偏移了-1。1.配置3——参数计数是对的,但是参数都乱了。 x
在中间注入,并且位置对于 1 美元不正确。
我应该如何设置我的 git 别名,以便参数计数正确并且位置 1..N 是我所期望的?或者我应该更改我的 shell 脚本,以便在我检查参数计数时,我检查'count-1'?
bash - 创建一个包含 bash 命令替换和参数的 git 别名
明白啦:
git diff $(git status -s | awk 'FNR == $LINE_NUM {print $2}')
...其中行号是按状态输出的文件。
现在我想为这个命令创建一个别名.gitconfig
:
我希望这个别名根据我将在命令行中输入的行号参数运行 git 的 diff 命令。我是 bash 新手,我不确定是否需要一个 bash 函数来处理这个问题,或者如何将参数传递给替换的命令。
git - 如何修复:找不到命令-Git Alias
我正在尝试设置一个 git 别名以列出所有使用此命令标记为“假定未更改”的文件:
当我直接在 powershell 中使用此命令时,它按预期工作,但作为别名我得到错误:
在我的 .gitconfig 文件中,我有
我尝试了不同的变体......用'!' 感叹号和不带,
用双/单引号括起来和不带。
如果我删除末端部分,它会按预期工作,例如
所以我认为命令后半部分的语法有问题?
任何帮助,将不胜感激...
git - git submodule foreach 不能作为别名工作
我曾经使用过类似的命令
或者对于可能失败的命令
所以现在我为第一个表单创建了一个别名,它工作正常
然后我也尝试为第二种形式做它,它根本不起作用
请注意,我仍然可以像第一个一样使用它
但这在使用别名时看起来像是不必要的输入。
它在上面的示例中使用 'git all' 给出的错误是 error: pathspec 'develop || true' 与 git 已知的任何文件都不匹配
而在“子模块”中,它会输出错误,但会继续到下一个子模块。
关于如何修复第二个版本的任何指针?
干杯。
git-config - 是否可以在 .gitconfig 中编写多行别名?
我知道可以使用&&
(and) 语句为同一个别名运行多个命令。然而,对于长组合,它会失去可读性。举个例子:
save = !git status && git add -A && git commit -m \"$1\" && git push --force && git log && :
我想知道是否有一种多行方式来编写它?
例如,也许拥抱它{}
。
git - 具有多个命令的 Git 别名
审查后,我需要更改一些代码并将我的所有更改代码重新推送到远程分支上。
所以我想用别名(例如:)在 git 上自动化git repushall
这些不同的命令:
git add .
git commit --amend
(和 ctrl + x)
git push --force-with-lease
我知道它在.gitconfig
文件中
你有什么主意吗 ?
git - Git commit --amend 别名挂起
我在我的有这个别名~/.gitconfig
:
然而,当我运行时git am
,它挂起,我得到(master|AM/REBASE)
提示,我必须运行git am --abort
。
git - 同时为 `git push -u origin $BRANCH_NAME` 和 `git push` 设置一个更快的别名
当我想在已经有上游分支的分支上推送更改时,git push
我只需要。但是当没有当前的上游分支时,我必须输入git push -u $BRANCH_NAME
.
我一直在创建新的分支(对于我处理的每个功能,大约每两个小时左右一个)。我有时也会打错字。它变得烦人。如何创建一个可以自动解析为git push
或git push -u $BRANCH_NAME
不需要我输入分支名称的别名?