![](/img/trans.png)
[英]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.