千家信息网

gitlab中怎么使用git config进行相关的配置操作

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,本篇内容介绍了"gitlab中怎么使用git config进行相关的配置操作"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔
千家信息网最后更新 2025年01月31日gitlab中怎么使用git config进行相关的配置操作

本篇内容介绍了"gitlab中怎么使用git config进行相关的配置操作"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

命令: git config

使用git config进行相关的配置操作

配置文件

git在整体上,配置文件分为三级,结合优先级相关信息如下

简单来说,优先级别离仓库越近越高,所以 项目级别 > 用户级别 > 系统级别。相同的设定同时出现时,优先级别高的会覆盖上层的配置。

配置检查

使用git config 不同的参数可以对如上三个不同的级别进行相关设定的检查

因为相同的设定有可能会产生覆盖,使用git config -l会列出git认为的最终设定信息

问题现象

很多客户端在自动生成.gitignore时会碰到问题,比如在如下git和os的版本下碰到了ng new动作发生的错误提示

环境信息

liumiaocn:angualr liumiao$ git --versiongit version 2.15.0liumiaocn:angualr liumiao$ uname -adarwin liumiaocn 17.3.0 darwin kernel version 17.3.0: thu nov 9 18:09:22 pst 2017; root:xnu-4570.31.3~1/release_x86_64 x86_64liumiaocn:angualr liumiao$ liumiaocn:angualr liumiao$ ng --version  _           _         ____ _   ___  / \  _ __  __ _ _  _| | __ _ _ __   / ___| |  |_ _| / △ \ | '_ \ / _` | | | | |/ _` | '__|  | |  | |  | | / ___ \| | | | (_| | |_| | | (_| | |   | |___| |___ | |/_/  \_\_| |_|\__, |\__,_|_|\__,_|_|    \____|_____|___|        |___/angular cli: 1.7.3node: 8.9.1os: darwin x64angular: ...liumiaocn:angualr liumiao$

现象

liumiaocn:angualr liumiao$ ng new demo1 --skip-install create demo1/readme.md (1021 bytes) create demo1/.angular-cli.json (1240 bytes)...省略 create demo1/src/app/app.component.ts (207 bytes)error: could not expand include path '~/.gitcinclude'fatal: bad config line 44 in file /usr/local/git/etc/gitconfigproject 'demo1' successfully created.liumiaocn:angualr liumiao$

配置信息

liumiaocn:angualr liumiao$ cat /usr/local/git/etc/gitconfig [core]  excludesfile = ~/.gitignore  legacyheaders = false # >git 1.5  quotepath = false[user]#  name = your name#  email = your@name[mergetool]  keepbackup = true[push]  default = simple # [ matching | simple ][color]  ui = auto  interactive = auto[repack]  usedeltabaseoffset = true # >git 1.5[alias]  s = status  a = !git add . && git status  au = !git add -u . && git status  aa = !git add . && git add -u . && git status  c = commit  cm = commit -m  ca = commit --amend # careful  ac = !git add . && git commit  acm = !git add . && git commit -m  l = log --graph --all --pretty=format:'%c(yellow)%h%c(cyan)%d%creset %s %c(white)- %an, %ar%creset'  ll = log --stat --abbrev-commit  lg = log --color --graph --pretty=format:'%c(bold white)%h%creset -%c(bold green)%d%creset %s %c(bold green)(%cr)%creset %c(bold blue)<%an>%creset' --abbrev-commit --date=relative  llg = log --color --graph --pretty=format:'%c(bold white)%h %d%creset%n%s%n%+b%c(bold blue)%an <%ae>%creset %c(bold green)%cr (%ci)' --abbrev-commit  d = diff  master = checkout master  spull = svn rebase  spush = svn dcommit  alias = !git config --list | grep 'alias\\.' | sed 's/alias\\.\\([^=]*\\)=\\(.*\\)/\\1\\\t => \\2/' | sort[include]  # as of 1.7.10 https://github.com/git/git/commit/9b25a0b52e09400719366f0a33d0d0da98bbf7b0  path = ~/.gitcinclude  path = .githubconfig  path = .gitcredential#[github]#  user =#  token =[diff]  # git does copy/rename *detection*. if you want it to track copies/renames:  # http://stackoverflow.com/questions/1043388/record-file-copy-operation-with-git  # renames = copies[diff "exif"]  textconv = exif[credential]  helper = osxkeychainliumiaocn:angualr liumiao$

原因

原因似乎是因为~的展开出现了问题,将~在设定文件中展开为全局的名称暂定解决了这个问题,但是结合上文可知,其实是将系统级的设定降到了用户级的处理方式。

修改方法

liumiaocn:angualr liumiao$ sudo cp /usr/local/git/etc/gitconfig /usr/local/git/etc/gitconfig.orgpassword:liumiaocn:angualr liumiao$ echo $home/users/liumiaoliumiaocn:angualr liumiao$ echo ~/users/liumiaoliumiaocn:angualr liumiao$ sudo vi /usr/local/git/etc/gitconfigliumiaocn:angualr liumiao$ liumiaocn:angualr liumiao$ diff /usr/local/git/etc/gitconfig /usr/local/git/etc/gitconfig.org2c2<  excludesfile = /users/liumiao/.gitignore--->  excludesfile = ~/.gitignore44c44<  path = /users/liumiao/.gitcinclude--->  path = ~/.gitcincludeliumiaocn:angualr liumiao$

"gitlab中怎么使用git config进行相关的配置操作"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0