深入Git配置

git配置

shell 复制代码
git config -h
usage: git config [<options>]

Config file location
    --global              use global config file
    --system              use system config file
    --local               use repository config file
    --worktree            use per-worktree config file
    -f, --file <file>     use given config file
    --blob <blob-id>      read config from given blob object

Action
    --get                 get value: name [value-pattern]
    --get-all             get all values: key [value-pattern]
    --get-regexp          get values for regexp: name-regex [value-pattern]
    --get-urlmatch        get value specific for the URL: section[.var] URL
    --replace-all         replace all matching variables: name value [value-pattern]
    --add                 add a new variable: name value
    --unset               remove a variable: name [value-pattern]
    --unset-all           remove all matches: name [value-pattern]
    --rename-section      rename section: old-name new-name
    --remove-section      remove a section: name
    -l, --list            list all
    --fixed-value         use string equality when comparing values to 'value-pattern'
    -e, --edit            open an editor
    --get-color           find the color configured: slot [default]
    --get-colorbool       find the color setting: slot [stdout-is-tty]

Type
    -t, --type <>         value is given this type
    --bool                value is "true" or "false"
    --int                 value is decimal number
    --bool-or-int         value is --bool or --int
    --bool-or-str         value is --bool or string
    --path                value is a path (file or directory name)
    --expiry-date         value is an expiry date

Other
    -z, --null            terminate values with NUL byte
    --name-only           show variable names only
    --includes            respect include directives on lookup
    --show-origin         show origin of config (file, standard input, blob, command line)
    --show-scope          show scope of config (worktree, local, global, system, command)
    --default <value>     with --get, use default value when missing entry

添加配置

shell 复制代码
git config 参数名 "value" # 添加本仓库配置
git config --global 参数名 "value" # 添加全局配置

配置全局用户信息

shell 复制代码
git config --global user.name ""  # 配置用户名
git config --global user.email "" # 配置邮箱

配置仓库用户信息

shell 复制代码
cd repo # 进入git仓库目录
git config user.name ""  # 配置用户名
git config user.email "" # 配置邮箱

不同的仓库可能来自不同的平台有github、gitlab、gitee等,通过配置仓库用户信息可以更好的区分不同平台的账户。

配置pull rebase

shell 复制代码
git config --global pull.rebase true 

默认时,git pull = git fetch+git merge

添加如上配置后,git pull = git pull --rebase

经常会出现很多的 Merge branch 'master' of ... 污染commit 信息,通过该配置可以避免出现这种污染。

删除配置

shell 复制代码
git config --global --unset 参数名  
git config --unset 参数名 

参考

Git提交时出现Merge branch 'master' of ...之解决方法

相关推荐
Auv开心9 小时前
【git stash切换】
经验分享·git
星霜旅人16 小时前
【Linux】Git原理与使用
git
zhangphil19 小时前
git reset --hard HEAD~1与git reset --hard origin/xxx
git
格格巫ZYX20 小时前
Git GitHub Gitee
git·gitee·github
!Polaris21 小时前
【git-首次初始化本地项目、关联远程仓库】
git
coding随想1 天前
优化你的Git历史:解决分支合并中的‘多余记录’问题
git
追梦的鱼儿1 天前
Android Studio 配置之gitignore
ide·git·android studio·intellij-idea
黎相思2 天前
Git企业级项目管理实战
git·gitee
多一点灵性2 天前
Git 命令
git