Git命令速查:克隆、提交、分支与合并
4星 · 超过85%的资源 需积分: 0 191 浏览量
更新于2024-08-29
2
收藏 19KB DOCX 举报
"该文档是关于Git常用命令的总结,涵盖了从创建和克隆仓库,管理本地更改,提交历史,分支和标签操作,以及更新和发布等核心Git操作。"
Git是一个分布式版本控制系统,用于追踪对文件的修改,便于多人协作开发。以下是一些Git常用命令的详细解释:
1. **创造**
- **克隆现有存储库**:`$git clone ssh://user@domain.com/repo.git`,这个命令用于从远程服务器复制一个完整的Git仓库到本地。
- **创建一个新的本地存储库**:`$git init`,这将在当前目录初始化一个新的Git仓库。
2. **当地变化**
- **查看工作目录状态**:`$git status`,用于检查工作区和暂存区的状态,显示哪些文件有变动。
- **查看文件差异**:`$git diff`,比较工作区和最近一次提交的差异。
- **添加更改到暂存区**:`$git add .` 或 `$git add -p <file>`,`.` 表示添加所有更改,`-p` 允许选择性地添加部分更改。
3. **提交**
- **提交所有更改**:`$git commit -a`,将暂存区的所有更改提交到仓库,`-a`表示自动添加所有已跟踪的文件。
- **提交前的更改**:`$git commit`,在执行此命令之前,需要先使用`git add`将更改放入暂存区。
- **修改最后一次提交**:`$git commit --amend`,慎用,用于修改最近一次的提交信息,但不要用于已经推送到远程的提交。
4. **提交历史**
- **查看提交历史**:`$git log`,列出所有提交记录,从最新开始。
- **查看文件的历史变化**:`$git log -p <file>`,展示文件随时间的改动。
- **查看责任人信息**:`$git blame <file>`,显示每个行是谁何时修改的。
5. **分支机构和标签**
- **列出所有分支**:`$git branch -av`,包括本地和远程分支。
- **切换分支**:`$git checkout <branch>`,切换到指定分支。
- **创建分支**:`$git branch <new-branch>`,在当前HEAD基础上创建新分支。
- **基于远程分支创建跟踪分支**:`$git checkout --track <remote/branch>`,用于从远程仓库拉取并创建跟踪分支。
- **删除本地分支**:`$git branch -d <branch>`,如果分支已被合并,可以安全删除。
- **打标签**:`$gittag <tag-name>`,在当前提交上创建一个标签。
6. **更新和发布**
- **查看远程仓库**:`$git remote -v`,列出已配置的远程仓库。
- **获取远程更改**:`$git fetch <remote>`,下载远程仓库的最新更改但不合并。
- **拉取并合并**:`$git pull <remote> <branch>`,从远程仓库拉取并合并指定分支。
- **推送更改**:`$git push <remote> <branch>`,将本地分支的更改推送到远程仓库。
- **删除远程分支**:`$git branch -dr <remote/branch>`,从远程仓库删除分支。
- **发布标签**:`$git push --tags`,将本地的标签推送到远程仓库。
7. **合并与基础**
- **合并分支**:`$git merge <branch>`,将指定分支的更改合并到当前HEAD。
- **重新基座**:`$git rebase <branch>`,将当前分支的提交历史重新基于另一个分支,用于保持干净的提交历史。
这些命令是Git日常开发中非常基础且常用的,掌握它们能够帮助开发者高效地管理代码版本。在实际使用中,还可能需要结合其他命令和选项,以应对各种复杂的版本控制需求。
2021-04-25 上传
2023-05-12 上传
2023-05-13 上传
2024-03-12 上传
2023-12-21 上传
2023-05-27 上传
2023-05-31 上传
2023-07-12 上传
2023-08-15 上传
17岁boy想当攻城狮
- 粉丝: 11w+
- 资源: 12
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全