簡體   English   中英

為什么git branch和$(git branch)輸出不同的結果

[英]why git branch and $(git branch) outputs different result

我正在嘗試制作一個bash腳本,該腳本將在其他分支的當前分支之前打印提交。 但是,當我在子shell中執行命令git branch時,不僅獲得分支名稱,還獲得當前目錄中的文件和文件夾列表。 為什么調用$(git branch)會發生這種情況?

這不是命令替代,而是引號。 這是git branchgit branch的結果:

$ git branch
  5-job-test-fails
* master
  revisions
  with_cool_background

注意星號。

當您編寫echo $(git branch) ,由於未引用該參數,因此星號將擴展到當前目錄中的文件:

$ echo $(git branch)
5-job-test-fails app bin cable config config.ru db erd.pdf Gemfile Gemfile.lock Guardfile lib log public Rakefile README.rdoc test tmp vendor master revisions with_cool_background

為了克服這個問題,請引用以下參數:

$ echo "$(git branch)"
  5-job-test-fails
* master
  revisions
  with_cool_background

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM