文章目录
- 💻 Mac 用户怎么下载
- 💡 补充说明
- 验证安装
- Homebrew安装
- 方式一:国内镜像安装(推荐国内用户)
- 方式二:官方脚本安装
- 安装前准备:安装命令行工具
- 验证安装
- 安装后提示
- 主要原因:换行符(CRLF vs LF)在作怪
- 解决方法
- 其他可能(概率较低)
Git 的官方下载总入口是:https://git-scm.com/downloads。
💻 Mac 用户怎么下载
目前 Git 官网对于 macOS 的推荐安装方式,是使用包管理器或命令行工具,而不是直接下载一个.dmg或.pkg文件。
- 推荐方式(Homebrew):如果你装了 Homebrew,在终端运行
brew install git即可。 - 最省事的方式(Xcode 工具):在终端输入
xcode-select --install,系统会弹出窗口引导你安装,其中就包含了 Git。 - 其他系统:如果你是 Windows 用户,官网的下载页会自动开始下载安装程序;Linux 用户则可以在官网找到各发行版的安装指令。
💡 补充说明
官网曾维护过一个 macOS 二进制安装程序,但早已停止更新(停留在 2.33.0 版本),所以现在在官网上已经找不到那个直接下载的链接了。用 Homebrew 或 Xcode 命令行工具是更稳妥且能获取较新版本的选择。
验证安装
无论用哪种方式,安装完成后,在终端运行以下命令确认:
git--version如果能正常显示版本号(如git version 2.xx.x),就说明安装成功了。
Homebrew安装
在 Mac 上安装 Homebrew,主要有两种方式:使用官方脚本(适合网络环境较好的情况)或使用国内镜像脚本(适合国内网络环境)。考虑到你之前遇到过的网络问题,优先推荐国内镜像方式。
方式一:国内镜像安装(推荐国内用户)
如果直接访问 GitHub 较慢或失败,可以使用国内维护的安装脚本,它会自动帮你选择国内源。
在终端中粘贴并执行以下命令:
/bin/zsh-c"$(curl-fsSLhttps://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"执行后,脚本会提示你选择下载源(通常选数字1或2即可),然后按提示输入开机密码并确认。安装过程中需要保证网络畅通。
方式二:官方脚本安装
如果你的网络可以稳定访问 GitHub,这是最直接的方式。
在终端中执行:
/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"安装脚本会说明它将执行的操作,并在开始前暂停等待你确认。按回车键继续,过程中可能需要输入密码。
安装前准备:安装命令行工具
无论用哪种方式,Homebrew 都依赖 Xcode Command Line Tools。如果之前没有安装过,建议先在终端运行以下命令,并在弹窗中点击“安装”:
xcode-select--install安装完成后,在终端运行以下命令验证:
xcode-select -p如果输出/Library/Developer/CommandLineTools,说明工具已就绪。
验证安装
安装完成后,关闭并重新打开终端,然后运行以下命令检查是否成功:
brew--version如果输出类似Homebrew 4.x.x的版本号,就说明安装成功了。你也可以运行brew doctor来检查环境状态。
查看版本:brew -v 更新brew版本:brew update 查找:brew search python(其中python替换为要查找的关键字) 安装:brew install python(其中python替换为要安装的名称) 本地软件库列表:brew ls 如果遇到问题可以右键下面地址查看常见错误解决办法 https://gitee.com/cunkai/HomebrewCN/blob/master/error.md https://gitee.com/cunkai/HomebrewCN/issues brew官方地址:https://brew.sh/zh-cn/ 安装成功 但还需要重启终端 或者 运行 source /Users/admin/.zprofile 否则国内地址无法生安装后提示
如果你使用的是 Apple Silicon 芯片的 Mac,安装完成后终端可能会提示你将brew添加到PATH环境变量中。按照终端输出的提示命令执行即可(通常是执行eval "$(/opt/homebrew/bin/brew shellenv)"并将其写入~/.zprofile文件)。
在win环境开发的代码,提交到git后,在mac上git clone代码后,把win环境的代码覆盖替换mac环境,同样的代码 git提示有变化 什么原因
你遇到的情况,核心原因很可能是Windows 和 macOS 的换行符(Line Ending)差异,导致 Git 把“换行符的转换”误判成了“文件内容修改”。你手动覆盖文件的操作,恰好让这个问题暴露了出来。
主要原因:换行符(CRLF vs LF)在作怪
Windows 系统默认使用CRLF(回车+换行)作为换行符,而 macOS 和 Git 仓库内部默认使用LF(换行)。
当你从 Git 克隆代码到 Mac 时,Git 可能会根据你的配置,自动把仓库里的LF转换成了 Mac 风格的LF(这一步通常没问题)。但当你把 Windows 环境下的代码(里面是CRLF)直接覆盖过去时,Mac 上的 Git 检测到文件里的换行符从LF变成了CRLF。虽然肉眼看起来文字没变,但在 Git 眼里,这就是实打实的文件内容变更,因此会提示“又变化了”。
解决方法
建议在Mac上操作,统一配置,让 Git 忽略这种平台差异导致的“伪变更”。
第一步:在 Mac 上检查并确认问题
在 Mac 的项目终端里运行git diff。如果看到大段文件的所有行都被标记为删除和新增,但内容看起来完全一样,基本就能确定是换行符问题。
第二步:配置 Mac 的 Git
在 Mac 终端执行以下命令,告诉 Git 在提交时把CRLF转成LF,但检出时不自动转换,保持 Mac 原生的LF风格:
gitconfig--globalcore.autocrlf input第三步:让配置对现有文件生效
执行完配置后,需要让 Git 重新规范化一下当前仓库的文件。在项目根目录运行:
# 先将当前状态暂存,避免丢失未提交的修改(如果确认没有要保留的本地修改,可跳过这步)gitadd.-ugitcommit-m"保存文件以刷新换行符"# 让 Git 重新应用新的换行符配置gitadd--renormalize.# 查看状态,此时那些因换行符导致的“变化”应该消失了gitstatus其他可能(概率较低)
如果做完上述步骤,问题依旧,可以再检查一下文件权限。Mac 和 Windows 对文件可执行权限的记录方式不同,有时也会导致 Git 提示变更。可以在 Mac 上执行git config core.filemode false来让 Git 忽略权限变化。
预防建议:为了让团队里所有人都保持一致,最稳妥的办法是在仓库根目录放一个.gitattributes文件,内容写上* text=auto。这样无论谁在什么系统上克隆,Git 都会按统一规则处理换行符,不再依赖每个人的本地配置。