我与Git
有点结合。我试图执行git commit
但我需要能够~/.gitconfig1
和~/.gitconfig2
之间等维护到是否有一个命令行开关 - 或反正有Git
使用不同的gitconfig文件,然后在/etc/gitconfig
,~/.gitconfig
和.git/config
发现的呢?如何指定自定义全局gitconfig路径?
回答
我找到了一种方法来执行此操作 - 虽然不够高雅,但确实奏效 - 迄今为止,似乎是实现这一目标的唯一方法。
Git使用HOME
路径来确定.gitconfig
是哪里。我是能够执行这样的事情:
/home/marco/.silly/.gitconfig
/home/marco/.stupid/.gitconfig
/home/marco/.gitconfig
和执行git的承诺(这是需要.gitconfig
唯一的命令),当我推翻了回家路。
HOME=/home/marco/.silly/ git commit -m "silly configuration"
然后,您可以使用别名来做到这一点很容易
alias sillygit="HOME=/home/marco/.silly/ git"
sillygit commit -m "silly stuff"
尼斯破解。我似乎无法找到任何真正的方法来做到这一点 - 有一个GIT_CONFIG环境变量,但它只影响'git config'本身,就像它的'-f, - file'选项一样。 – Cascabel 2010-08-29 15:38:28
man git-config
告诉我使用-f
标志来传递配置文件。然而,它似乎不适用于git config
以外的其他命令,所以我认为您必须在提交之前调用它,轻松完成别名。
这只是告诉特定的git-config调用什么文件来读取或写入 - 它不会影响任何其他命令,据我所知。 – Cascabel 2010-08-29 04:23:01
正确 - 这不起作用。 – 2010-08-29 15:03:49
可以使用--git-DIR
git --git-dir /home/marco/silly/.git commit ...
--git-dir设置正在编辑的存储库,这是提问者特别试图避免的。 – 2012-10-28 12:40:32
马里奥Ceppi的alias approach可以在一个稍微更优雅的方式来使用使用-c config=value
参数到git
:
$ alias sillygit="git -c user.name=Silly -c [email protected]"
$ sillygit commit
这当然假设你不介意在你的.bashrc
或类似的地方保留不同的配置密钥,而不是你的.gitconfig
,并且它有破解shell完成的警告。
- 1. 如何定义全局自定义RoutedCommand?
- 2. 用include路径定义全局变量
- 3. 在intellij中,如何使用相对路径指定全局库?
- 4. 如何在Rmarkdown中指定pandoc的全局路径
- 5. 如何指定ec2.py和ec2.ini的自定义路径?
- 6. FileOpenPicker - 如何指定自定义开始路径
- 7. YII完全自定义路径?
- 8. 如何在不指定剃刀视图中的布局路径的情况下指定全局MVC布局
- 9. mysql自定义全局定义变量
- 10. CMake:定义自定义包含路径
- 11. TYPO3 7.6.15无法为自定义部分定义路径路径
- 12. 自定义全局热键
- 13. 如何更改自定义指令的路径?角
- 14. 指定路径
- 15. Lodash _.setWith自定义路径
- 16. 如何定义路径
- 17. 如何设置Cookie的路径自定义路径
- 18. 如何自定义或更改轨道中的路径路径?
- 19. 如何在cakephp中定义自定义区域路径?
- 20. 如何在rails中定义自定义路径?
- 21. 是否可以为nuget指定packages.config的自定义路径?
- 22. 定义路径
- 23. 如何在WebStorm 6中指定CoffeeScript文件的自定义输出路径
- 24. 如何在Ruby on Rails 5中指定自定义修补程序路径?
- 25. 如何指定tuareg-mode emacs中的注释文件的自定义路径?
- 26. 如何为Webpack 1中的babel加载器指定一个自定义路径?
- 27. 如何在Django中为Chatterbot指定自定义语料库路径?
- 28. angular2定义全局文件路径/命名空间
- 29. 指定API路径
- 30. 指定OUTFILE路径
你真的需要两个不同的配置,而在一个回购?你可以使用每个回购的.git/config来获得你想要的?如果你只有两种常见的设置来传播几十个回购券,我想这不是很优雅吗? – Cascabel 2010-08-29 04:24:41
@Jefromi是的,我愿意。这是一个独特的情况,我遇到了需要两个配置的地方 – 2010-08-29 15:03:32
另一个明显的选择是将全局别名'git commit-v2'(或更短的)替换为'!export GIT_AUTHOR_NAME =“Second name”; git commit'。 – Cascabel 2010-08-29 15:43:08