[英]git - Switching to a local develop, then back to feature branch resets the status of modified/added files
[英]Alias for keeping feature branch in sync with “develop” branch
我进行了几次搜索,发现该别名可以使功能分支与developer分支保持同步,当我从Git bash手动运行时,develop分支可以正常工作。
sync='!f() { echo Syncing this branch with develop && git checkout develop &&
git pull && git checkout – && git rebase develop; }; f'
我尝试将此别名放在.gitconfig中,但是出现以下错误
error: pathspec '"\342\200\223"' did not match any file(s) known to git.
我发现的是git checkout-代表,返回到您所在的最后一个分支会创建此错误。
我也尝试将相同的命令放在.bashrc中,如下所示
alias sync='echo Syncing this branch with develop && git checkout develop && git pull
&& git checkout – && git rebase develop'
这会产生相同的错误。
但是,只是为了确保当我手动运行Git Bash中的所有命令时,它们都可以正常工作,因此没有其他问题。 似乎这仅仅是由于Windows上的msysgit或bash的差异,因为我已经在Mac和Linux上阅读了这些git别名工作。
某些开明的头脑可以告诉我如何更改它以使其在Windows上运行吗?
谢谢
\\342\\200\\223
是代表UTF-8“破折号”字符的八进制字符序列:八进制342 200 223
与十六进制e2 80 93
相同。 您可能从某处复制/粘贴了该命令行,并且该字符使git
感到git
。 使用ASCII -
也就是说,这个角色: –
这一个: -
是不一样的 。 您需要使用后者。
您可以通过最喜欢的十六进制转储程序运行字符来进行检查。 这是我的示例:
$ echo -n – | hexdump
0000000 e2 80 93
0000003
$ echo -n - | hexdump
0000000 2d
0000001
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.