How can I specify custom global gitconfig path?

前端 未结 3 1328
故里飘歌
故里飘歌 2020-12-31 16:56

I\'m in a bit of a bind with Git. I\'m trying to execute git commit but I need to be able to swtich between ~/.gitconfig1 and ~/

相关标签:
3条回答
  • 2020-12-31 17:17

    I found a way to execute this - it wasn't elegant but it did work - and so far seems to be the only way to get this to work.

    Git uses the HOME path to determine where .gitconfig is. I was able to perform something like this:

    /home/marco/.silly/.gitconfig
    /home/marco/.stupid/.gitconfig
    /home/marco/.gitconfig
    

    And when executing Git Commit (which is the only command that requires the .gitconfig) I overrode the home path.

    HOME=/home/marco/.silly/ git commit -m "silly configuration"
    

    You can then use alias to do this easily

    alias sillygit="HOME=/home/marco/.silly/ git"
    sillygit commit -m "silly stuff"
    
    0 讨论(0)
  • 2020-12-31 17:24

    Mario Ceppi's alias approach can be used in a slightly more elegant way using the -c config=value argument to git:

    $ alias sillygit="git -c user.name=Silly -c user.email=silly@silly.org"
    $ sillygit commit
    

    This of course assumes you don't mind keeping the differing config keys in your .bashrc or the like instead of in your .gitconfig, and it has the caveat of breaking shell completion.

    0 讨论(0)
  • 2020-12-31 17:31

    You can use --git-dir

    git --git-dir /home/marco/silly/.git commit ...
    
    0 讨论(0)
提交回复
热议问题