"Git是分布式版本控制系统,用于追踪对文件的修改,方便团队协作和代码管理。本资源列出了Git的一些基本操作命令,包括初始化仓库、配置用户信息、克隆项目、查看状态、添加和提交文件、删除文件、查看提交历史、应用标签等。以下是对这些命令的详细解释:
1. `git init`:这个命令用于在当前目录创建一个新的Git仓库,将文件夹转化为受Git管理的状态。
2. `git config --global user.name "xxx"` 和 `git config --global user.email "xxx@xxx.com"`:这两个命令分别设置Git的全局用户名和电子邮件地址,这是进行Git操作时必要的个人信息。
3. `git config --global color.ui true`:启用Git的彩色输出,使得命令行中的状态和日志更易读。
4. `git config --global color.status auto`、`git config --global color.diff auto`、`git config --global color.branch auto`、`git config --global color.interactive auto`:自动开启不同场景下的颜色显示,如状态、差异、分支和交互式操作。
5. `git clone git+ssh://git@192.168.168.168/stm32_adc.git`:克隆远程仓库到本地,这里的示例是通过SSH协议从指定IP地址克隆名为stm32_adc的仓库。
6. `git status`:查看工作区的文件状态,哪些文件被修改、新增或删除,以及未被追踪的文件。
7. `git add xyz` 和 `git add .`:将指定文件或当前目录下所有文件(除了隐藏文件)添加到暂存区,准备进行提交。
8. `git commit -m 'xxx'`:将暂存区的所有更改提交到仓库,`-m`后面跟随的是提交信息。
9. `git commit --amend -m 'xxx'`:修改最近一次的提交信息,通常用于修正错误的提交描述。
10. `git commit -am 'xxx'`:将所有已追踪的文件直接添加并提交,适用于频繁修改的情况。
11. `git rm xxx`:从暂存区和工作区中删除指定文件。
12. `git rm -r *`:递归删除当前目录下的所有文件和子目录,谨慎使用。
13. `git log`:查看提交历史,按时间顺序列出所有提交。
14. `git log -1`、`git log -5`:分别显示最近1次和最近5次的提交记录。
15. `git log --stat`:在提交历史中显示统计信息,如修改的文件数量和行数。
16. `git log -p -m`:以补丁格式显示每次提交的差异,并且如果一个提交包含多条消息,显示每一条消息的差异。
17. `git show dfb02e6e4f2f7b573337763e5c0013802e392818` 和 `git show dfb02`:分别显示指定哈希值的完整提交详情和简化的提交详情。
18. `git show HEAD`:显示当前HEAD指向的提交信息,即最新一次的提交。
19. `git show HEAD^` 和 `git show HEAD^5`:查看最新提交的上一个版本和第五个父版本的提交信息。
20. `git tag`:列出所有标签。
21. `git tag -a v2.0 -m 'xxx'`:创建一个带有消息的标签v2.0,`-a`表示创建一个附注标签。
22. `git show v2.0`:显示指定标签的详细信息。
23. `git log v2.0`:查看从v2.0标签开始的提交历史。
24. `git diff`:比较工作区与当前版本库(默认是HEAD)的差异。
25. `git diff --cached`:比较暂存区与当前版本库的差异。
26. `git diff HEAD^`:比较最新提交与上一版本的区别。
27. `git diff HEAD -- ./lib`:比较工作区的lib目录与HEAD版本的差异。
28. `git diff origin/master..master`:比较本地master分支与远程origin/master分支之间的差异,只显示本地的更改。
以上就是Git的基本操作命令,熟练掌握这些命令能帮助开发者高效地管理代码版本。"