Git命令速查:克隆、提交、分支与合并
4星 · 超过85%的资源 需积分: 0 7 浏览量
更新于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 上传
2019-11-19 上传
2022-09-23 上传
2023-02-27 上传
17岁boy想当攻城狮
- 粉丝: 11w+
- 资源: 12
最新资源
- Vectorized Analytic Two Body Propagator (Kepler Universal Variables):解析传播例程使用通用变量求解所有轨道类型的单一公式-matlab开发
- kodluyoruz-frontend-odev4:我们正在编写前端教育中的第四个作业
- clo::giraffe:Clo-命令行目标-可以进行验证以避免常见错误的CLI命令,参数和标志
- COVID19_Italy
- 泛域名PHP镜像克隆程序
- Accuinsight-0.0.194-py2.py3-none-any.whl.zip
- keensyo.github.io
- fusioninventory:管理FusionInventory代理安装和配置的角色
- node-child-service:运行和监控子进程
- laravel-pt-rules:与葡萄牙有关的验证规则
- vuex-store-tools:without快速建立Vuex商店...无需样板
- SS_Practica1
- buildroot-external-microchip:Microchip SoC(又名AT91)的Buildroot外部
- 数据库表结构对比工具.zip
- Tarkov
- Fark Nag Eliminator-crx插件