Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I override Git configuration options by command line parameters?

Tags:

git

config

I want to override certain Git configuration options (in my case http.proxy) when calling a Git command directly by using command line parameters. Is this possible?

like image 209
mstrap Avatar asked Apr 08 '13 16:04

mstrap


People also ask

How do you view all system settings for git via command line?

If you want to check your configuration settings, you can use the git config --list command to list all the settings Git can find at that point: $ git config --list user.name=John Doe user.

How do I change my git config list?

The global git config is simply a text file, so it can be edited with whatever text editor you choose. Open, edit global git config, save and close, and the changes will take effect the next time you issue a git command. It's that easy.

How do I apply a configuration through the entire git environment?

Git stores all global configurations in . gitconfig file, which is located in your home directory. To set these configuration values as global, add the --global option, and if you omit --global option, then your configurations are specific for the current Git repository. You can also set up system wide configuration.


2 Answers

Yes, you can pass it with -c, like:

git -c http.proxy=someproxy clone https://github.com/user/repo.git 
like image 161
bereal Avatar answered Sep 21 '22 13:09

bereal


Note that there is a new feature regarding the ability to override (with the command git -c) a config:

You couldn't set a config to an empty string (git -c http.proxy= or any other foo.bar=), that is until git 2.1.2 (Sept 30th, 2014), and commit a789ca7 Junio C Hamano (gitster)

config: teach "git -c" to recognize an empty string

In a config file, you can do:

[foo] bar 

to turn the "foo.bar" boolean flag on, and you can do:

[foo] bar= 

to set "foo.bar" to the empty string.
However, git's "-c" parameter treats both:

git -c foo.bar 

and

git -c foo.bar= 

as the boolean flag, and there is no way to set a variable to the empty string.
This patch enables the latter form to do that.

like image 35
VonC Avatar answered Sep 22 '22 13:09

VonC