1. 下载与安装:三平台全覆盖
多电脑同步的前提,是每一台机器上都装好 Git。不同操作系统安装方式不同,下面按平台分别演示,装完后用同一条命令验证。
macOS
Windows
Linux(Ubuntu / Debian)
Linux(CentOS / RHEL)
验证安装
无论哪个平台,安装完成后都执行同一条命令确认版本号能正常输出。
看到版本号说明 Git 已经就绪。下面这一步每个平台都可能踩到。
source ~/.zshrc 或重开终端窗口。2. 首次配置:告诉 Git 你是谁
Git 每次提交都会把「作者」写进历史记录。所以在正式用之前,要把你的名字和邮箱告诉它——这台电脑上所有仓库都会默认使用这套身份。
这两行配置一次,永久生效。再用下面命令查看全部配置,确认名字和邮箱已写入。
另外建议顺手把默认分支名设为 main,避免每次 init 后还要改分支名。
git config --global core.editor "code --wait" 把默认编辑器改成 VS Code;git config --global pull.rebase true 让拉取时走 rebase,保持线性历史。3. 创建第一个仓库:git init 与 git clone
配置完身份,就能开仓库了。仓库(repository)就是被 Git 管理的目录。创建仓库有两条路:从零新建,或从远程克隆一份现成的。
无论哪种方式,被管理的目录里都会多出一个隐藏的 .git 目录。
.git 目录想象成项目专属的「档案馆」——它记录了项目每一次变更存档、谁改的、改了什么。你能看见的代码文件是展厅里的展品,档案馆藏在幕后。永远不要手动去改这个目录,否则档案损坏,历史就乱套了。4. 提交你的第一份代码
有了档案馆,下一步是往里存第一份档案。完整流程是:查看状态 → 暂存 → 提交。先用 status 看看仓库现在是什么情况。
README.md 显示为「Untracked」,意思是 Git 还没把它纳入管理。用 add 把文件放进暂存区,再 commit 正式归档。
add 是把改动放进「暂存区」,commit 才是正式盖章归档。两步分离,让你能挑选要一起归档的改动。多电脑同步时,每一台电脑上执行的都还是这套 add → commit 流程。
-m "说明";万一卡在 Vim,按 Esc 再输入 :q! 强制退出。5. 注册远程仓库:GitHub 与 Gitee
本地提交只存在你这一台电脑里。要让另一台电脑拿到代码,需要一个「中转站」——远程仓库。把远程仓库想象成快递的「分拣中心」:电脑A把包裹寄到这里,电脑B来这里取。
国内常用两个平台:GitHub(全球最大)和 Gitee(码云,国内访问快)。注册后点击「New repository / 新建仓库」,填名字、选公开或私有、创建即可。创建后页面会给出仓库地址,分 HTTPS 和 SSH 两种,先记住它。
如果你在国内、只想要同步速度快,选 Gitee;如果要把项目展示给全世界或参与开源,选 GitHub。拿到仓库地址后,下一步解决「免密推送」。
6. SSH 密钥配置:免密推送
用 HTTPS 推送每次都要输账号密码,很烦。SSH 密钥相当于一张「电子门禁卡」——你把公钥交给服务器,以后这台电脑推送就自动刷开门禁,无需再输密码。每台需要推送的电脑都要单独配一次。
一路回车用默认值即可。生成后用 cat 把公钥打印出来,整段复制。
打开 GitHub/Gitee 的「Settings → SSH and GPG keys → New SSH key」,把公钥粘贴进去保存。然后用 ssh -T 测试门禁卡是否生效。
看到这句问候就说明门禁卡生效。两种连接方式各有取舍:
ssh -vT git@github.com 看详细日志;③远程地址必须是 git@ 开头而非 https://。7. 推送代码到远程:git push
门禁卡就位,该把第 4 章的本地提交寄到中转站了。先关联远程地址,再推送。
-u 的作用是建立本地 main 与远程 origin/main 的「跟踪关系」。配好之后,以后这台电脑推送只需 git push 三个字,Git 就知道往哪推。
git pull 把远程更新拉下来合并,再 push。这也是多电脑同步的核心动作。8. 在第二台电脑上获取代码:git clone
代码已经在中转站了。现在换到第二台电脑,从远程把整个项目取下来。前提:这台电脑也装好了 Git、配好了 SSH 密钥和 user 身份。
clone 是一次性把远程整个仓库(含全部历史)下载到本地,并自动配好 origin 远程地址和上游跟踪分支。所以 clone 之后不必再手动 remote add。
git log --oneline 查看完整提交历史,确认这是你想接手的项目状态;再 git branch -a 看看有哪些分支可供切换。9. 多电脑日常同步:pull 与 push 工作流
两台电脑都有项目后,日常就是「你推我拉」的循环。核心节奏是:开始工作前先 pull 拿最新,结束前 push 推上去。
commit
推送
中转站
pull
pull 一步到位:先 fetch 把远程更新取回,再 merge 合并进当前分支。如果想看得更细,可以拆成两步。
git pull --rebase,它把你的本地提交「搬到」远程最新提交之后,不产生合并提交。10. 冲突处理:当两台电脑同时修改
如果两台电脑改了同一行代码又都推上去,Git 没法自动决定留哪个,就会报「冲突」。冲突不可怕,它只是 Git 把决定权交给你。下面演示一次完整的解决过程。
场景:电脑A把 README.md 第一行改成「项目A版」,电脑B把同一行改成「项目B版」,电脑B pull 时触发冲突。
打开 README.md,会看到 Git 留下的冲突标记:
三段标记的含义:<<<<<<< 到 ======= 是你本地(HEAD)的版本;======= 到 >>>>>>>> 是远程的版本。解决冲突就是手动挑出最终要保留的内容,删掉所有标记。
触发冲突
手动取舍
标记解决
完成合并
git mergetool 调起可视化工具辅助对比。11. 实战演练:完整的多电脑同步流程
把前面所有环节串成一次完整的演练。模拟两台电脑交替开发一天的全过程,每步都有命令和输出。
创建+首次推送
克隆+修改+推送
拉取+继续开发
日常同步
步骤一:电脑A 创建项目并首次推送
步骤二:电脑B 克隆、修改并推送
步骤三:电脑A 拉取最新代码继续开发
这就是多电脑同步的完整闭环:A 起步 → B 接手 → A 拉取续写。只要每次开工先 pull、收工前 push,两台电脑就能持续交替协作,代码始终合流在远程中转站上。
.gitignore 文件排除不需要同步的内容(如 node_modules、.env、编译产物),避免把大文件或敏感信息推上远程。git config --global alias.st status 之后输入 git st 即可查状态,多电脑都配上一份,操作更顺手。git init 创建仓库,写一个文件并完成首次提交,最后用 git log --oneline 查看历史。
夜雨聆风