Showing git branch in ConEMU

前端 未结 5 696
别跟我提以往
别跟我提以往 2021-02-08 07:04

Is there a way to show the branch in git somewhere visually (background or similiar) in ConEmu?

相关标签:
5条回答
  • 2021-02-08 07:34

    Disclaimer #1

    ConEmu is not a shell, so it does not provide "shell features" like tab-completion, command history and others.

    Usually, Git information like branch or amount of changes is displayed in the command line prompt, for example C:\path\to\repository [branch|+2~4-6]>. This is done by the executing shell, not the console frame.

    As far as I know, the standard Windows command prompt (CMD) does not support modifying that. The bash that comes with Git for Windows already supports that perfectly though; and for PowerShell there are numerous extensions for Git, most notably posh-git.

    0 讨论(0)
  • 2021-02-08 07:34

    Git branch can be visible in plain cmd or Far Manager prompt.

    GIT branch in cmd prompt

    All magic is done with special ANSI sequences ("Inject ConEmuHk" and "ANSI X3.64 ..." options must be checked). I Run GitShowBranch /i to install showing branch, GitShowBranch /u to uninstall.

    Also, you may run your cmd as following (within Task contents or ConEmu's Command line)

    cmd /k ver & GitShowBranch /i
    

    PS. File GitShowBranch exists in ConEmu's distro, but you may see it online.

    0 讨论(0)
  • 2021-02-08 07:44

    Change the specified named task to {Bash::Git} in Settings -> Startup and you'll have branch name showing up.

    Settings screeshot

    0 讨论(0)
  • 2021-02-08 07:47

    Yes there is a way. Install git bash, then in ConEmu settings, under the "ComSpec" section set the Explicit executable to "C:\Program Files (x86)\Git\bin\sh.exe" --login -i.

    This runs a bash shell session, and gives you a fully resizable window, with the git tab completion and current working branch prompt.

    0 讨论(0)
  • 2021-02-08 07:53

    To sum up the situation is:

    I know sh.exe can do this but needed to check if it is in the Git\bin folder and have access by only writing sh in command line.

    First I saw sh.exe in Git\bin folder but wanted to see if I can execute on command line. To see it I checked environment vars using by echo %path% It was complicated to see if there is. I used powershell script and there is :)

    I would have execute sh in command line too :)))

    Refrences:

    • powershell where
    • split environment variables (path)

    Codes:

    echo %path%
    ($env:Path).split(";") | where ({$_ -like "*Git*"})
    
    0 讨论(0)
提交回复
热议问题