Git基础知识详解:初始化、提交、查看状态和版本控制
需积分: 10 80 浏览量
更新于2024-09-08
收藏 180KB DOCX 举报
Git学习笔记
Git是一款版本控制系统,帮助开发者跟踪代码修改、协作开发和版本管理。本文将详细介绍Git的基本使用和重要知识点。
一、Git的登录及初始化
在使用Git之前,需要进行初始化设置,包括设置用户名和邮箱。这可以通过以下命令实现:
$ git config --global user.name "YourName"
$ git config --global user.email "email@example.com"
接下来,创建一个空目录,并使用git init命令将其变成Git可以管理的仓库:
$ mkdir learngit
$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/
二、初始化Git仓库,及提交文件
使用git init命令可以初始化一个Git仓库。添加文件到Git仓库需要两步:
• 第一步,使用命令git add,注意,可以反复多次使用,添加多个文件;
• 第二步,使用命令git commit -m "read_me",完成。
三、查看Git当前的工作区状态
要随时掌握工作区的状态,使用git status命令。如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
四、Git还原之前版本
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。返回上一个版本可以使用命令:$ git reset --hard HEAD^。返回上上一个版本可以使用命令:$ git reset --hard HEAD^^。穿梭前,使用git log可以查看提交历史,以便确定要回退到哪个版本。要重返未来,使用git reflog查看命令历史,以便确定要回到未来的哪个版本。
五、Git版本库简介
版本库(Repository):工作区有一个隐藏目录“.git”,这个不算工作区,而是Git的版本库。Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
在将文件添加到Git版本库时,是分两步执行的:
第一步是使用“git add”把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是使用“git commit”提交更改,实际上就是把暂存区的内容提交到版本库。
六、 Git 分支管理
Git的分支管理可以帮助我们更好地组织和管理代码。使用git branch命令可以创建、查看和删除分支。使用git checkout命令可以切换到不同的分支。
七、 Git 合作开发
Git的分布式版本控制系统使得多人合作开发变得更加容易。使用git remote命令可以添加、查看和删除远程仓库。使用git pull命令可以从远程仓库拉取最新的代码。使用git push命令可以将代码推送到远程仓库。
八、 Git 高级应用
Git的高级应用包括 Git Submodule、Git Hooks、Git LFS等。Git Submodule可以帮助我们管理子模块,Git Hooks可以帮助我们在不同阶段执行自定义的脚本,Git LFS可以帮助我们管理大文件。
Git是一个功能强大且灵活的版本控制系统,帮助开发者更好地管理代码、协作开发和版本控制。本文仅仅介绍了Git的基本使用和重要知识点,更多的高级应用和技巧需要进一步学习和实践。
2020-11-29 上传
生如~夏花
- 粉丝: 4614
- 资源: 51
最新资源
- StarModAPI: StarMade 模组开发的Java API工具包
- PHP疫情上报管理系统开发与数据库实现详解
- 中秋节特献:明月祝福Flash动画素材
- Java GUI界面RPi-kee_Pilot:RPi-kee专用控制工具
- 电脑端APK信息提取工具APK Messenger功能介绍
- 探索矩阵连乘算法在C++中的应用
- Airflow教程:入门到工作流程创建
- MIP在Matlab中实现黑白图像处理的开源解决方案
- 图像切割感知分组框架:Matlab中的PG-framework实现
- 计算机科学中的经典算法与应用场景解析
- MiniZinc 编译器:高效解决离散优化问题
- MATLAB工具用于测量静态接触角的开源代码解析
- Python网络服务器项目合作指南
- 使用Matlab实现基础水族馆鱼类跟踪的代码解析
- vagga:基于Rust的用户空间容器化开发工具
- PPAP: 多语言支持的PHP邮政地址解析器项目