Git 入门指南
1. 初识 Git
1.1 Git 是什么?
Git 是一个开源的分布式版本控制系统,用于高效地跟踪和管理项目代码的变更历史(不仅仅是代码,其他格式也可以)。
1.2 为什么要有 Git
在学习或工作中,为了防止文档丢失或更改失误,需要保留历史记录。例如:
Git 分布式版本控制系统用于管理代码变更历史。文章涵盖安装配置、工作区暂存区版本库概念、分支管理及远程仓库操作。通过示例演示了本地提交、分支切换合并、冲突解决及多人协作流程。掌握 Git 基本命令如 add commit push pull 可有效提升开发效率并保障代码安全。

Git 是一个开源的分布式版本控制系统,用于高效地跟踪和管理项目代码的变更历史(不仅仅是代码,其他格式也可以)。
在学习或工作中,为了防止文档丢失或更改失误,需要保留历史记录。例如:
每个版本有各自的内容,但最终只有一份文档被使用。随着版本增多,难以记忆每个版本的具体修改内容。版本控制器能记录每次修改及版本迭代,方便多人协同作业。目前最主流的版本控制器是 Git,它可以控制电脑上所有格式的文件。
注意事项:所有的版本控制系统只能跟踪文本文件的改动(如 txt、网页、程序代码),可以告诉你每次的改动位置。图片、视频等二进制文件虽然也能管理,但无法跟踪具体变化,只能知道文件大小改变。
Git 最早在 Linux 下开发,现在可在 Linux、Unix、Mac 和 Windows 平台上运行。
git --versionCommand 'git' not found。sudo apt-get install git -ygit --version 确认版本号。git --version 检测是否安装成功。仓库是进行版本控制的文件目录。创建命令为 git init,需在目标目录下执行。
安装后需设置用户名称和邮箱地址。
git config [--global] user.name "Your Name"
git config [--global] user.email "[email protected]"
--global 表示全局配置,所有仓库生效。git config -lgit config [--global] --unset user.name.git 目录下的 index 文件中,也称为索引。.git,Git 在此管理所有文件的历史。流程说明:
git add 更新暂存区。git commit 将暂存区内容写入版本库。添加文件:
git add [file1] [file2] ...:添加指定文件。git add .:添加当前目录下所有改动。提交文件:
git commit -m "message":提交暂存区全部内容,message 为描述信息。查看日志:
git log:查看历史提交记录。git log --pretty=oneline:单行显示。.git 目录结构:
index:暂存区。HEAD:指向当前分支的指针。refs/heads/master:保存 master 分支的最新 commit id。objects:对象库,包含版本库对象及内容。修改文件:
git status:查看文件状态。git diff [file]:显示暂存区和工作区差异。git diff HEAD -- [file]:查看版本库和工作区区别。版本回退:
git reset:用于回退版本。--soft, --mixed, --hard。HEAD (当前), HEAD^ (上一个), HEAD~1 (上一个)。git reflog。撤销修改:
git checkout -- [file]。git reset --mixed HEAD [file]。git reset --hard HEAD^。删除文件:
git rm [文件名],然后 commit。git checkout -- [文件名]。git branchgit branch devgit checkout devgit merge dev:合并 dev 分支到当前分支。git merge --no-ff -m "msg" branch_name。合并时若发生冲突,Git 会用 <<<<<<<, =======, >>>>>>> 标记。需手动调整冲突代码,重新 add 和 commit。
git stash 储藏当前工作区信息。git stash pop 恢复现场。在 Gitee 等平台创建仓库,可选择单分支模型或生产/开发模型。
支持 HTTPS 和 SSH 两种方式。
ssh-keygen -t rsa,将公钥添加到平台设置。git addgit commit -m "XXX"git pushgit pull origin <branch>简化命令,例如:git config --global alias.st status
git tag [name]git tag -a [name] -m "XXX"git push origin --tagsgit push origin --delete <标签名>目标:远程 master 分支下 file.txt 文件新增代码。
git remote prune origin。
微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online