mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6mobile wallpaper 7mobile wallpaper 8
1920 字
5 分钟
Git的入门快速使用
2025-01-27

之前也用过一次git,加上昨天的一些使用心得
看的教程在这里:https://zhuanlan.zhihu.com/p/193140870
首先依旧感谢大佬的这篇文档,帮我解决了新手不知道怎么开始的难题。

这篇博客加入我对于大佬教程的总结以及我自己的补充。


GitHub SSH Key 配置核心总结#

SSH Key 是电脑设备与 GitHub 账户间的安全身份绑定凭证,如同二者通信的专属安全阀门,配置后可免密操作 GitHub 仓库,兼顾安全与便捷。

Git 生成的 SSH 密钥默认存放路径为 C/Users/name/.ssh,若该路径未找到密钥文件,可通过以下指令生成:

ssh-keygen -t rsa -C "xxxxxx@163.com"

该指令通过 ssh-keygen 工具基于 RSA 算法生成密钥对,后缀的邮箱建议填写 GitHub 注册邮箱,也可自定义备注,核心作用是区分多设备、多 GitHub 账户的密钥(如一台设备绑定多个 GitHub 账户时,需为每个账户配置独立密钥,备注可快速识别对应密钥)。 密钥生成后,.ssh 路径下会生成私钥和公钥一对文件:公钥以 .pub 为后缀,可公开使用;私钥无后缀,需妥善保存在本地,切勿泄露。

将公钥内容完整复制,粘贴至 GitHub 个人主页的 SSH Key 配置页完成绑定,即可实现设备与 GitHub 账户的安全联动。绑定成功后,就能通过 SSH 方式安全、免密地完成仓库克隆、代码推送 / 拉取等日常操作。


本地仓库的创建#

我们进入需要上传的项目根目录,在此打开git-bash, 输入git-init,
后续目录中会出现一个隐藏文件夹.git,他专门用于跟踪仓库的版本管理 接着输入git add .将文件添加到仓库,可以理解为将东西打包好准备 然后,输入git commit -m"提交文件"把文件提交到仓库,引号内的内容是注释用于记录你的操作,至此本地仓库完成创建


本地仓库与 Github 仓库对应绑定#

先在 Github 中创建好对应仓库后,记录下对应的 SSH 地址,我这里是 git@github.com:Skyloveyz3/SkyloveBlog.git

然后执行指令 git remote add origin git@github.com:Skyloveyz3/SkyloveBlog.git,完成这一步我们就实现了本地仓库与 Github 仓库的绑定,后续可以进行 pull、push 操作。

当然我这里一开始用的是 mizuki 作者本身的开源项目直接下载下来用的,原本的 Git 绑定的是作者的仓库。git remote remove origin 这个指令可以解绑原先已绑定的仓库(解绑前可先用 git remote -v 查看当前远程绑定情况)。日常开发中,本地仓库默认只绑定一个名为 origin 的远程 Github 仓库,满足绝大多数使用场景。


本地文件的上传#

首次代码推送需要用到指令:git push -u origin master对文件进行提交,因为需要建立本地分支和远程分支的关联,否则 Git 不知道要推送到远程的哪个分支,可能报错。

后续我们再对项目进行修改后,想要同步这些改动,首先可以执行 git add . 指令,将当前目录下所有新增、修改、删除的文件一次性暂存到暂存区(可理解为「把所有改动重新打包整理,为提交做准备」)。

如果你的需求更精细——比如只需要上传部分特定文件、部分文件夹,或者还有些改动未完善暂时不想提交,建议先通过以下步骤精准操作,避免误提交:

  1. 先审查项目整体变动:git status 执行该指令可以清晰查看项目相对上一版本的所有变动细节,终端会以不同颜色标注状态:
    • 「红色」:未暂存的改动/新增/删除文件
    • 「绿色」:已暂存等待提交的文件 通过它能快速明确哪些文件有改动,方便后续针对性选择暂存内容。
  2. (可选)查看具体改动内容:git diff 若想知道某文件具体改了哪些内容(比如哪一行新增、哪一行删除),可执行该指令,它会逐行显示文件的变动细节,比 git status 更深入,适合改动较多时确认修改内容是否符合预期。
  3. 针对性暂存单个/部分文件(替代 git add . 无需打包所有改动,可按需选择暂存对象:
    • 暂存单个文件git add 目标文件名.html(例:git add index.html
    • 暂存整个文件夹git add 目标文件夹名/(例:git add css/

完成后执行git commit -m"注释说明做了哪些改动" ,完成本地仓库的文件添加。接着git push完成远程仓库更新


远程仓库文件下载同步#

直接执行git pull即可实现将远程仓库最新版文件一键同步本地客观文件
他本质是

git fetch(下载远程最新版本到本地仓库)
git merge(合并远程修改到本地实际文件)

两个指令分开执行


进阶Q&A#

如果我操作失误了想要撤回怎么办#

Git 提供了多种撤回操作,核心是「根据失误的不同阶段选择对应指令」,新手优先选择安全、不可逆风险低的方式,以下是最常见的 3 种场景:

场景1:仅在本地修改了文件,还未执行 git add(最易撤回)#

失误描述:改乱了文件内容,还没把修改暂存,想恢复到「上一次提交的干净版本」。 操作指令:直接执行以下指令,一键撤回所有未暂存的修改:

# 撤回所有文件的未暂存修改
git checkout .
# (可选)仅撤回单个文件的未暂存修改(更精准)
git checkout 目标文件名.html # 例:git checkout index.html

说明该操作仅恢复文件内容,不会删除新增的未追踪文件(比如新建的 new.js),安全无风险,修改的内容会直接丢失(无法恢复,确认不需要再执行)。

场景 2:已经执行 git add 暂存了修改,还未执行 git commit#

失误描述:误把不需要的文件暂存了,想撤销暂存,回到「未暂存」状态,再决定是否保留修改。 操作指令:分两步,先撤销暂存,再按需撤回修改

  1. 撤销所有文件的暂存状态(回到工作区,修改内容会保留)
git reset HEAD .
  1. (可选)如果想同时放弃修改,恢复到干净版本,再执行场景 1 的指令:
git checkout .

场景 3:已经执行 git commit 暂存了修改,还未执行 git push#

失误描述:提交了不理想的修改到本地仓库,想回滚到上一个干净的提交版本。
操作指令:推荐操作(安全,保留修改):

# 回滚到上一个提交版本,本次失误提交的修改会保留在工作区
git reset --soft HEAD^

说明:

  1. HEAD^ 代表「上一个提交版本」,HEAD^^ 代表「上上个版本」,以此类推。
  2. 该操作不会删除任何修改内容,只是把「失误提交」从本地仓库撤回,修改会回到工作区,你可以重新调整后再提交。
  3. (慎用)如果想彻底删除本次失误提交的所有修改(不可逆),可执行:
    git reset --soft HEAD^
    警告:—hard 参数会彻底丢失本次修改,无法恢复,执行前一定要确认修改无保留价值。
分享

如果这篇文章对你有帮助,欢迎分享给更多人!

Git的入门快速使用
https://skyloveblog.com/posts/git/
作者
asphodelz
发布于
2025-01-27
许可协议
none

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00