如果你正在学习 Git,或者想快速回顾一下 Git 的常用操作,这篇文章绝对适合你。Git 是一个强大的版本控制系统,它能帮你管理代码的每一个版本,让你在编程路上更加从容。接下来,我会用最简单的方式,带你快速掌握 Git 的核心操作。
一. 初识 Git:从零开始
1.初始化本地仓库
开始一个新的项目,需要一个地方来保存代码。Git 的 git init 命令就像是给代码建了一个“家”,让 Git 能够开始跟踪代码变化。
git init
2.添加文件到暂存区
当写完代码后,Git 需要知道哪些文件是你想要保存的。git add 命令就像是告诉 Git:“嘿,这些文件很重要,记得它们哦!”
git add 文件名
如果有很多文件要添加,也可以用 git add . 来添加当前目录下的所有文件。
3.提交你的代码
添加完文件后,下一步就是提交了。git commit 命令就像是给你的代码拍了一张快照,记录下当前的状态。记得用 -m 参数加上注释,这样以后你就能知道这次提交的内容了。
git commit -m "这是我的第一次提交"
二. 查看状态和历史
1.查看提交状态
有时候,可能想知道 Git 现在跟踪了哪些文件,哪些文件还没提交。git status 命令就像是 Git 的“体检报告”,能帮你快速了解当前的状态。
git status
2.查看历史提交
随着时间推移,代码会经历很多次修改。git log 命令可以帮你查看所有的提交历史,就像是一本日记,记录了你的每一次操作。
git log
如果觉得默认的输出太长了,可以用 git log --oneline 来查看简洁版的日志。
git log --oneline
三. 回退到过去的版本
有时候,可能会发现新写的代码有问题,想回到之前的版本。git reset 命令就像是时光机,能帮你回到过去的某个时刻。
git reset --hard HEAD~1
这条命令会回到上一次提交的状态。如果想回到更早的版本,可以用版本号来精确指定。
git reset --hard [版本号]
如果想知道每次版本切换的记录,可以用 git reflog 命令。
git reflog
四. 与远程仓库同步
1.推送代码到远程仓库
当写完代码后,可能想把代码上传到远程仓库(比如 GitHub)。git push 命令就像是把你的代码“寄”给远程仓库。
git push origin master
如果想让以后的推送更方便,可以在第一次推送时加上 -u 参数,这样以后只需要写 git push 就能上传代码了。
git push -u origin master
2.从远程仓库拉取代码
如果需要从远程仓库获取最新的代码,可以用 git pull 命令。
git pull origin master
3.克隆远程仓库
如果需要从头开始一个项目,可以用 git clone 命令把远程仓库的内容复制到本地。
git clone [远程仓库地址]
五. 分支管理:多人协作的利器
1.创建和切换分支
在多人协作时,分支是必不可少的。git branch 命令可以创建分支,git checkout 命令可以切换分支。
git branch 新分支名
git checkout 新分支名
如果想一步到位,可以用 git checkout -b 新分支名。
2.查看所有分支
如果想知道自己有哪些分支,可以用 git branch 命令。
git branch
3.合并分支
当完成了一个分支的工作,想把代码合并回主分支时,可以用 git merge 命令。
git merge 分支名
六. SSH 配置:安全上传代码
1.生成公钥和私钥
当你需要通过 SSH 方式上传代码时,首先需要生成一对公钥和私钥。这就好比是给你的代码加了一把锁,只有持有正确钥匙的人才能访问你的代码。
打开终端,运行以下命令:
ssh-keygen -t rsa -C "你的邮箱地址"
这里**,-t rsa** 指定了密钥的类型为 RSA,-C “你的邮箱地址” 是你的标识信息,方便你在远程仓库中识别这把密钥。
运行这个命令后,系统会提示你输入保存密钥的路径和密码。如果你不想设置密码,可以直接按回车跳过。生成的密钥通常会保存在 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub 文件中。
2.添加公钥到远程仓库
生成密钥后,你需要将公钥添加到你的远程仓库(比如 GitHub)。打开 ~/.ssh/id_rsa.pub 文件,复制里面的内容。然后,在你的远程仓库的设置页面(通常是 SSH keys 或 Deploy keys),粘贴这个公钥并保存。
这样,你就可以通过 SSH 方式安全地上传代码了。
Git 是一个非常强大的工具,帮我们管理代码的每一个版本,可以在编程路上更加从容。通过掌握这些基本操作,已经可以开始使用 Git 来管理你的项目了。
完!