当前位置: 首页 > article >正文

一分钟了解git全局配置

配置参考

git全局配置在用户家目录的.gitconfig

该文件的推荐配置为:

[user]
	name = laptop
	email = laptop@example.com
[core]
	quotepath = false
	autocrlf = false
...
怎样修改全局配置

方法1:直接修改.gitconfig文件

方法2: 用git命令,比如

git config --global ***

git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"
git config --global core.quotepath false

配置解读

配置中“user”部分会在提交代码的时候作出不同user的标识。比如有多台电脑或多个人维护一个仓库,在user上作出区分。

在 Git 的配置文件中,[core] 部分的这两个配置项 quotepathautocrlf 具有不同的含义和作用:

quotepath = false

正如前面所讲,quotepath 配置项用于控制 Git 如何显示文件名中的非 ASCII 字符。当设置为 false 时,Git 会尝试以原始字符形式显示文件名。这意味着包含中文、日文、韩文等非 ASCII 字符的文件名,在 Git 的输出(如 git statusgit log 等命令的结果)中会以正常的、可读的形式呈现,而不是被编码为类似 URL 编码的格式。这样可以更直观地查看和处理包含特殊字符的文件名。

autocrlf = false

autocrlf 配置项主要用于处理行尾换行符(end - of - line,EOL)的转换,具体含义如下:

  • Windows 系统:在 Windows 系统中,文本文件使用回车符(\r)和换行符(\n)的组合(\r\n)来表示一行的结束。
  • Unix 和 macOS 系统:在 Unix 和 macOS 系统中,文本文件仅使用换行符(\n)来表示一行的结束。

autocrlf 设置为 false 时:

  • Git 不会自动转换行尾换行符。这意味着在跨平台协作时,你需要自己负责确保文件的行尾换行符在不同操作系统下的一致性。例如,如果你在 Windows 上创建文件并提交到 Git 仓库,文件的行尾将保持为 \r\n,当其他使用 Unix 或 macOS 系统的开发者克隆该仓库时,他们看到的文件行尾就是 \r\n。这种设置适合于那些对行尾换行符有严格要求,或者希望手动控制换行符转换的场景,比如开发跨平台软件项目时,某些特定的代码文件需要特定的行尾格式。

相比之下,autocrlf 还有其他常见设置:

  • autocrlf = true:在 Windows 系统上,Git 会在文件写入磁盘时将 \n 转换为 \r\n,在文件添加到暂存区时将 \r\n 转换为 \n。在 Unix 和 macOS 系统上,Git 会在文件写入磁盘时将 \n 保持不变,在文件添加到暂存区时也将 \n 保持不变。这种设置适合一般的文本文件处理,能自动处理不同操作系统间的行尾差异。
  • autocrlf = input:在所有操作系统上,Git 都会在文件添加到暂存区时将 \r\n 转换为 \n,但在文件写入磁盘时不会进行转换。这对于那些希望在仓库中统一使用 Unix 风格行尾(\n),但又不想在本地修改文件原始行尾格式的场景很有用。

综上所述,[core] 部分的这两个配置 quotepath = falseautocrlf = false 分别针对文件名显示和行尾换行符处理进行了特定的设置,以满足特定的开发和协作需求。


http://www.kler.cn/a/488075.html

相关文章:

  • HTML5 动画效果:淡入淡出(Fade In/Out)详解
  • Openwrt @ rk3568平台 固件编译实践(二)- ledeWRT版本
  • 在JavaScript开发中,如何判断对象自身为空?
  • 对快速由表及里说拜拜/如何正确运用由表及里
  • Mysql - 多表连接和连接类型
  • 【年前假期学SHU分享】:计算机生物学、智能计算、通信、大数据、电子信息工程
  • 03_Redis基本操作
  • CTF随题思路—MiscMeowMeowMeow
  • 【广西乡镇界】arcgis格式shp数据乡镇名称和编码2020年内容测评
  • Attention系列笔记
  • JAVA2-类与对象编程(1)
  • vue如何实现动态路由?
  • 排序算法 C语言
  • macOS安装nvm
  • 【PPTist】查找替换、绘制文本框
  • 定位,用最通俗易懂的方法2:TDOA与对应的CRLB
  • 【Linux-多线程】-线程安全单例模式+可重入vs线程安全+死锁等
  • Clojure语言的多线程编程
  • Apache Hudi vs Delta Lake vs Apache Iceberg
  • Element UI与Element Plus:深度剖析
  • HarmonyOS 鸿蒙Next 预览pdf文件
  • 玩转多线程--入门
  • 两个关于 li bottom 的CSS 问题 笔记
  • flex(弹性)布局
  • Type-C单口便携显示器-LDR6021
  • 小白:react antd 搭建后台框架记录问题1