Git基础操作:撤销、提交与分支管理
需积分: 0 72 浏览量
更新于2024-08-04
收藏 19KB DOCX 举报
Git是一款强大的分布式版本控制系统,它被广泛用于软件开发和协作环境中,以追踪项目文件的历史变化并管理多个版本。以下是对提供的Git命令及其用途的详细解读:
1. **创建仓库(git init)**:
- `git init repo`:这是初始化一个新的Git仓库的基本命令,它会在指定的目录下创建一个新仓库,允许你开始对项目的变更进行版本控制。
2. **克隆仓库(git clone)**:
- `git clone ssh://git@git.xesv5.com:10088/wxgo/push-irc.git`:用于从远程服务器复制一份完整的仓库副本到本地,以便本地开发人员可以进行独立工作。
3. **设置用户名和邮箱(git config)**:
- `git config --global user.name "zhangxiaodong2"` 和 `git config --global user.email "zhangxiaodong2@100tal.com"`:这两个命令用于设置Git用户的全局属性,确保每次提交都能正确关联到开发者。
4. **查看分支(git branch)**:
- `git branch`:显示当前仓库的所有分支,以及每个分支的状态,帮助开发者了解项目的分支架构。
5. **查看状态(git status)**:
- `git status`:检查工作目录和暂存区的文件状态,包括哪些文件已被添加、修改或准备提交。
6. **拉取代码**:
- `git pull origin master`:将远程仓库的master分支代码同步到本地master分支。
- `git fetch`:获取远程仓库的更新,但不自动合并,保留了本地和远程之间的区别。
7. **查看改动**:
- `git diff`:显示工作目录与暂存区或暂存区与上次提交的差异。
- `git diff --cached`:仅查看暂存区与上次提交的差异。
- `git diff HEAD`:显示工作目录与暂存区的全部差异。
- `git diff --stat`:提供简洁的统计,快速了解更改概览。
8. **添加文件和操作**:
- `git add folder/or/file`:将文件或文件夹添加到暂存区。
- `git mv xx.go xxxx.go`:移动或重命名文件,同时更新索引。
- `git reset HEAD xx.go`:取消暂存特定文件,但保持在工作目录。
9. **提交(git commit)**:
- `git commit -a -m '注释'`:将暂存区的改动合并并提交为新的提交,附带注释说明。
10. **撤销操作**:
- `git reset --hard HEAD`:清除工作目录中的所有未提交更改,恢复到最后一次提交的状态。
- `git revert HEAD` 或 `git revert HEAD^` 或 `git revert commit_id`:撤销最近一次或指定的提交,创建一个新的提交来消除指定的变更。
11. **合并和冲突处理**:
- `git merge dev`:将dev分支合并到当前分支,可能引发冲突。
- 解决冲突后,先`git add` 冲突文件,然后`git merge --continue`,最后提交解决后的结果。
12. **推送代码**:
- `git push origin master`:正常推送本地更改到远程仓库。
- `git push origin master -f`:强制推送,覆盖远程仓库的相同分支。
13. **分支管理**:
- `git branch`:列出所有分支。
- `gitcheckout`(未提供完整命令):切换到指定分支。
这些Git命令是日常开发和团队协作中必不可少的工具,熟练掌握它们可以帮助开发人员更高效地管理代码版本和协作。通过理解每个命令的作用,开发者可以更好地维护项目历史记录,避免版本混乱,并确保代码质量。
2022-08-08 上传
2022-09-09 上传
2021-02-18 上传
2021-02-11 上传
2017-12-21 上传
普通网友
- 粉丝: 23
- 资源: 319
最新资源
- MATLAB实现小波阈值去噪:Visushrink硬软算法对比
- 易语言实现画板图像缩放功能教程
- 大模型推荐系统: 优化算法与模型压缩技术
- Stancy: 静态文件驱动的简单RESTful API与前端框架集成
- 掌握Java全文搜索:深入Apache Lucene开源系统
- 19计应19田超的Python7-1试题整理
- 易语言实现多线程网络时间同步源码解析
- 人工智能大模型学习与实践指南
- 掌握Markdown:从基础到高级技巧解析
- JS-PizzaStore: JS应用程序模拟披萨递送服务
- CAMV开源XML编辑器:编辑、验证、设计及架构工具集
- 医学免疫学情景化自动生成考题系统
- 易语言实现多语言界面编程教程
- MATLAB实现16种回归算法在数据挖掘中的应用
- ***内容构建指南:深入HTML与LaTeX
- Python实现维基百科“历史上的今天”数据抓取教程