Git命令速查:从基础到高级操作
5星 · 超过95%的资源 需积分: 47 68 浏览量
更新于2024-09-01
1
收藏 2KB TXT 举报
本文档提供了一份关于Git基础命令的简明教程,涵盖了从初始化本地仓库到与远程仓库交互、版本控制和分支管理等多个方面。
Git是一个分布式版本控制系统,用于跟踪对文件和项目目录的修改。以下是对标题和描述中所提及的知识点的详细解释:
1. **初始化本地仓库**:
使用`git init`命令可以将现有的项目目录转化为Git仓库,这会创建一个新的隐藏目录`.git`,用于存储Git的所有元数据。
2. **连接远程仓库**:
`git remote add origin git@github.com:yourName/repositoryname.git` 命令将本地仓库关联到GitHub上的远程仓库。`origin`是远程仓库的别名,通常用于表示主仓库。
3. **从远程仓库拉取文件**:
`git pull origin master` 用于从远程的`origin`仓库的`master`分支获取最新的代码并合并到本地。这通常在你想要更新本地代码以与远程同步时使用。
4. **提交代码到暂存区**:
`git add .` 会将所有改动添加到暂存区,准备进行提交。如果只想添加特定文件,可以使用`git add filename`。
5. **提交代码**:
`git commit -m "注释"` 用于将暂存区的改动保存为一个新的提交,其中`-m`后面是提交的描述信息。
6. **推送代码到远程仓库**:
`git push -u origin master` 将本地的`master`分支推送到远程仓库的`origin`,`-u`选项用于设置默认的上游分支,这样后续的`git push`就无需再次指定。
7. **拉取所有远程仓库更新**:
`git fetch` 用于获取远程仓库的最新信息,但不会自动合并。`git fetch --all`则会获取所有远程仓库的更新。
8. **查看远程仓库信息**:
`git fetch -av` 可以查看远程仓库的详细信息,包括远程分支和标签。
9. **查看提交历史**:
`git log` 显示提交历史,每个提交都有对应的作者、日期和注释。
10. **撤销提交**:
`git reset HEAD <文件>` 可以撤销对特定文件的最近一次提交。`git reset --hard HEAD^` 回退到上一个版本,`git reset --hard <提交版本的ID>` 回到指定的提交版本。
11. **将文件恢复到指定版本**:
`git checkout <提交版本的ID> -- <文件名>` 用于将某个文件恢复到历史中的特定版本。
12. **创建和管理标签**:
`git tag <版本号>` 创建一个标签,`git tag -a <版本号> <提交ID>` 创建带有注释的标签,`git tag -d <版本号>` 删除标签。
13. **分支管理**:
- `git branch <分支名>` 创建新分支。
- `git checkout -b <分支名>` 创建并切换到新分支。
- `git checkout <分支名>` 切换到已存在的分支。
- `git branch -d <分支名>` 删除分支(需确保分支已合并且无未推送的改动)。
- `git branch -D <分支名>` 强制删除分支(即使分支未被合并或有未推送的改动)。
14. **合并分支**:
`git merge <分支名>` 将指定分支的改动合并到当前分支。如果有冲突,需要手动解决后使用`git commit`提交。
15. **合并冲突处理**:
如果合并时出现冲突,可以使用`git merge --abort`放弃合并,或者手动解决冲突后再提交。
16. **查看版本路线**:
`git log --oneline --graph` 以简洁的格式显示提交历史,包括分支合并的图形表示。
17. **删除远程分支**:
`git push origin --delete <分支名>` 用于删除远程仓库的分支。
这些基本的Git命令是日常开发和协作中必不可少的工具,熟练掌握它们能够有效提高代码管理和团队协作的效率。通过不断实践和学习,你可以更加深入地了解Git的高级特性,如rebasing、cherry-picking等。
2021-01-09 上传
2020-10-17 上传
2020-09-15 上传
2020-05-04 上传
2021-10-12 上传
149 浏览量
2020-09-30 上传
qq_37399075
- 粉丝: 1
- 资源: 1
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍