Git学习
Git 学习笔记
一、Git 简介
Git 是一个开源的分布式版本控制系统,用于有效、高速地处理从小到大的项目版本管理。它允许团队协作开发项目,同时跟踪文件的变更历史。
二、安装 Git
在 Windows 上,可以从Git 官网下载安装包并安装。在 macOS 和 Linux 上,可以通过包管理器(如 Homebrew 或 apt)安装。
1 | # macOS |
安装完成后,可以通过以下命令检查 Git 版本:
1 | git --version |
三、配置 Git
首次使用 Git 时,需要配置用户信息,这些信息会出现在每次提交中。
1 | # 配置全局用户名 |
四、克隆仓库
克隆仓库是将远程仓库的代码复制到本地的过程。
1 | # 克隆远程仓库到本地 |
例如:
1 | git clone https://github.com/user/repo.git |
克隆完成后,进入项目目录:
1 | cd repo |
五、查看分支
分支是开发中的独立线程,用于隔离开发工作。
1 | # 查看所有分支 |
六、切换分支
切换分支可以让你在不同的开发线程之间切换。
1 | # 切换到指定分支 |
如果分支不存在,可以使用以下命令创建并切换:
1 | git checkout -b <new_branch_name> |
七、提交修改
提交是将本地的更改保存到版本历史中。
• 查看更改状态:
1 | git status |
• 添加更改到暂存区:
1 | # 添加所有更改 |
• 提交更改:
1 | git commit -m "Commit message" |
提交信息应简洁明了,描述本次更改的内容。
八、推送更改
将本地更改推送到远程仓库。
1 | git push origin <branch_name> |
如果当前分支已跟踪远程分支,可以直接使用:
1 | git push |
九、合并分支
合并分支是将一个分支的更改合并到另一个分支。
• 切换到目标分支:
1 | git checkout <target_branch> |
• 合并分支:
1 | git merge <source_branch> |
如果合并过程中出现冲突,Git 会提示你手动解决冲突。解决冲突后,需要再次提交更改。
十、解决冲突
当合并分支时,如果不同分支对同一文件的同一部分进行了修改,就会出现冲突。
• 手动解决冲突:打开冲突文件,找到冲突标记(<<<<<<<
、=======
、>>>>>>>
),选择保留的内容,删除冲突标记。
• 提交解决后的更改:
1 | git add <conflicted_file> |
十一、查看日志
查看提交历史可以帮助你了解项目的变更过程。
1 | git log |
可以通过以下选项简化日志输出:
1 | # 单行显示日志 |
十二、撤销更改
如果需要撤销本地更改,可以使用以下命令:
• 撤销暂存区更改:
1 | git reset <file_name> |
• 撤销工作区更改:
1 | git checkout -- <file_name> |
• 撤销最后一次提交:
1 | git reset HEAD~ --soft |
十三、远程仓库操作
远程仓库是存储代码的服务器,通常托管在 GitHub、GitLab 等平台上。
• 查看远程仓库:
1 | git remote -v |
• 添加远程仓库:
1 | git remote add origin <repository_url> |
• 更新远程仓库信息:
1 | git remote update |
• 拉取远程分支:
1 | git pull origin <branch_name> |
十四、常用命令总结
• 克隆仓库:git clone <repository_url>
• 切换分支:git checkout <branch_name>
• 提交更改:git add .
和git commit -m "message"
• 推送更改:git push origin <branch_name>
• 合并分支:git merge <source_branch>
• 查看日志:git log --oneline
• 解决冲突:手动编辑文件,提交更改
• 撤销更改:git reset
或git checkout --
• 更新远程仓库:git pull origin <branch_name>