Git命令速查:克隆、提交、分支与合并
4星 · 超过85%的资源 需积分: 0 126 浏览量
更新于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 上传
2021-02-25 上传
2020-06-19 上传
2024-07-23 上传
17岁boy想当攻城狮
- 粉丝: 11w+
- 资源: 12
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查