目录

  • 一、Git安装
  • 二、Git置
    • 用户信息配置
    • 默认分支修改
  • 三、创建仓库
    • 本地新建
    • 克隆远程仓库
  • 四、查看Git命令的帮助
  • 五、Git基础操作
    • 查看文件状态
    • 提交更新
    • 跳过暂存直接提交更新
    • 删除文件
    • 移动文件
    • 查看提交历史
    • 查看版本信息
    • 版本切换

一、Git安装

从Git官网下载对应系统的安装软件,然后直接一路默认安装就好。
这里有一点安装的时候尽量使用英文路径,避免后续有其他问题出现,很多软件都是这样,在安装的时候尽量使用英文路径。
安装完成后,在桌面空白地方鼠标右键,就有Git Bash和GitGUI两个选项,一个命令行操作一个图形用户界面操作。

二、Git置

鼠标右键打开Git Bash命令行操作

用户信息配置

git config --global user.name "Github用户名"
git config --global user.email "Github注册时用的邮箱"

git是分布式版本控制系统,通过添加用户名和邮箱在系统中添加一个标识。
注意:通过使用–global参数,表示该设置应用在该电脑上所有的git仓库,这也就说明不同仓库可以使用不同的用户名和邮箱,从而可以将不同项目上传到不同远程仓库。默认参数是–local配置当前使用的仓库。
在本地项目文件夹中打开Git Bash,使用不适用global参数配置的就是该仓库的设置。
git config --list 查看配置信息
git config --list --show-origin查看所有配置以及所在文件夹位置
git config user.name 查看用户名的配置
git config user.email 查看邮箱配置

默认分支修改

我们使用的远程仓库是Github,根据最新的github我们可以知道默认分支是main,不再是master,当然你也可以将github的默认分支改为master,都可以,没有影响。这里我讲下如何修改git的默认分支。
git config --global init.defaultBranch “main”
可以看到没修改前默认分支为master
设置默认分支后,初始化本地文件夹默认新建的分支是main

注意:上述配置信息在程序升级的时候仍然保留,可以在任何时候再次通过命令行来修改。

三、创建仓库

本地新建

git init初始化仓库
git init directorname 指定目录初始化
在本地新建一个文件夹,进入该文件夹中打开git命令操作,输入git init初始化仓库,在该文件夹中生成.git隐藏文件夹,包含了资源的所有元数据,包括暂存区index以及更新数据日志。
新建一个text.txt的文本文档,然后将其添加到暂存区,未添加前通过git status查看本地仓库状态,未添加到暂存区的文件为红色

克隆远程仓库

git clone <url>url指的是远程仓库的地址,一般使用的都是github上的仓库地址
git clone <url> reponame自定义克隆仓库在本地的名字

四、查看Git命令的帮助

当我们不知道git某一命令的具体有哪些参数可以使用的时候,可以通过使用Git命令的综合手册来查看详细介绍,该手册随着程序默认安装的。

1. git help <verb> #verb指的是操作名称,例如:add、commit
2. git <ver> --help
3. 如果不需要详细介绍,只要简单参数介绍 git <verb> -h 例如:git add -h

五、Git基础操作

查看文件状态

根据上面本地克隆了一个远程仓库到本地后,如果有修改,那么本地目录中所有文件只有两种状态:已跟踪未跟踪
已跟踪:指的是已经被纳入了版本控制的文件,在上一次快照中有他们的记录,例如你从github上克隆一个仓库到本地,那么在他们未被修改前,所有文件的状态都是已跟踪j。简单来说就是git已经知道的文件。
未跟踪:本地目录中除了已跟踪文件外的其他所有文件的都属于未跟踪,既不存在于上次快照的记录中,也没有放入暂存区。例如:你在本地克隆一个完整仓库后新建一个文件就是属于未跟踪状态。
已修改:已跟踪的文件在修改后,被Git标记为已修改文件,可以选择将某些修改过的文件放入暂存区然后commit提交暂存修改的文件到本地仓库。

  1. git status 查看文件状态

    1. git status -s 查看简洁状态
    2. 显示的状态有两栏,左边是暂存区状态,右边是工作区,A代表添加到暂存区,M代表修改过,??新建文件还未跟踪
  2. git add <files/filename>添加跟踪/暂存区,当参数为文件夹的时候则跟踪该目录下的所有文件
  3. git add .这里使用了.提交当前目录下所有文件


添加跟踪后

修改文件未添加到暂存区
添加已修改文件到暂存区

提交更新

提交到版本库前需要将所有修改的文件已经添加到暂存区,然后才能提交。

  1. git commit 回车后启动git设置的默认编辑器输入提交说明
  2. git commit -m "提交说明" 使用-m参数直接在后面添加提交说明
    提交后我们可以看到当前实在main分支,本次提交的SHA-1校验和是什么(33602f9),以及本次提交中有多少文件修改过,多少行添加和删改过。
    注意:提交显示的信息都是放在暂存区域的记录,任何修改过的文件但是还没有放到暂存区的文件提交后信息显示仍然保持已修改状态。

跳过暂存直接提交更新

git commit -m "提交说明" -a
在提交的时候使用-a选项,Git自动把所有已跟踪过的文件暂存起来一并提交。

删除文件

git rm delfilename
从Git中删除某个文件,需要从暂存区移除,然后提交。使用git rm命令在删除暂存区的同时也删除本地文件夹中的文件。最后提交就会将版本库中对应文件删除。
git rm --cached dir/delfilename
从版本库删除文件夹或文件但是本地保留该目录或者文件。

移动文件

git mv file_from file_to
利用移动文件可以用将版本库中的文件重命名

查看提交历史

git log
不传入任何参数,上述命令会按时间顺序列出所有提交,最近提交放在最上面。包含提交的校验和、作者名字和邮箱地址、提交时间和提交说明。
git log -p/--patch 显示每次提交所引入的差异
git log -p -2只显示最近两次提交
git log --stat 显示提交的简略信息

查看版本信息

git reflog
当存在多人协作且项目较大的时候可以快速查看提交的版本信息

版本切换

git reset --hard 版本号版本号通过查看版本信息(其实也就是每次提交的校验和前7位)git reset --hard HEAD`回退到上一个版本使用一个`,上两个版本^^,一百个使用HEAD~100`
如果突然后悔想要在回到后面的一个版本,通过版本号来恢复。

版本控制软件Git的使用(二)基本使用相关推荐

  1. 【22/03】为什么要学git分布式版本控制软件及基本操作

    碎碎念: 虽然说每次创建github仓库再push就几句命令,但是总是忘,于是整理了一下,理解记忆每条命令的含义,和清晰化流程很重要!!!!但最重要的就是我们为什么要学, 为什么要用, 这样在我们自己 ...

  2. Git前世今生-版本控制软件的发展

    版本控制软件发展至今已有40多年的历史. 最早的版本控制软件是1972年由Marc J. Rochkind开发的SCCS (Source Code Control System),通过将不同版本下的文 ...

  3. Git版本控制软件结合GitHub从入门到精通常用命令学习手册

    GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...

  4. Git版本控制软件结合GitHub常用命令学习手册

    编程技术2015-1-16TECHUG1条评论 我们发布了很多Git相关的文章,有系列教程(<Pro Git系列>),也有各种独门绝技(<让你的Git水平更上一层楼的10个小贴士&g ...

  5. 【转】Git版本控制软件从入门到精通学习手册

    GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...

  6. Git版本控制软件从入门到精通学习手册

    GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...

  7. [Git高级教程(二)] 远程仓库版本回退方法

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1 简介 最近在使用git时遇到了远程分支需要版本回滚的情况,于是做了一下研究,写下这篇博客. 2 ...

  8. 【Git】Git 基础命令 ( 添加暂存文件 git add | 提交文件至版本库 git commit | 查看版本库状态 git status | 查询文件修改 git diff )

    文章目录 一.添加暂存文件 git add 二.提交文件至版本库 git commit 三.查看版本库状态 git status 四.查询文件修改 git diff 一.添加暂存文件 git add ...

  9. 【Git】Git 基础命令 ( Git 版本库概念 | 创建版本库 git init | 克隆版本库 git clone )

    文章目录 一.Git 版本库概念 二.创建版本库 git init 三.克隆版本库 git clone 一.Git 版本库概念 Git 版本库概念 : Git 版本库 Repository 又称为 G ...

最新文章

  1. 世界顶尖精密仪器技术都掌握在哪些国家?
  2. xampp mysql.sock_解决xampp自启动和mysql.sock问题
  3. 阿里的STORM——JSTORM
  4. 获取GridView隐藏列值
  5. 使用 Webix 创建 Email 客户端
  6. mysql sycho_Java面试题 - osc_p1rj1z8j的个人空间 - OSCHINA - 中文开源技术交流社区
  7. 《学得少考得好》读书笔记
  8. php mysql 博客制作_PHP实现简易blog的制作
  9. Swagger UI 与SpringMVC的整合 II
  10. VTK:AnimateActors用法实战
  11. python3字节转化字符_捋一捋字符串与字节序列的关系
  12. java swing界面工具_Java GUI swing 工具包使用总结
  13. 【转】网页制作中的CSS+DIV:dl,dt,dd分别表示什么意思啊?请说明啊,谢谢有什么功能?...
  14. HTML5 Security Cheatsheet
  15. 高数:第三章(同济大学第七版)
  16. 使用anaconda安装opencv包
  17. 【RDMA】14. RDMA之Memory Window
  18. OpenStack云平台搭建(5) | 部署Nova
  19. 【vcpkg】下载软件包时的提示
  20. 中国人平均23岁初吻 消费文化与儒家文明碰撞

热门文章

  1. [C++/PTA] 我的支付宝和余额宝
  2. 叶国富创业24年,门店超五千家,名创优品年营收百亿
  3. 【调剂】哈尔滨师范大学人工智能实验室招收调剂生
  4. android软件perthbus,Android – 萬能遙控器 ZAZA
  5. cursor 属性:
  6. 高德地图AMap.Map is not a constructor
  7. php utf-8汉字转拼音
  8. 在Outlook 2003中更改阅读窗格的字体大小:不可能吗?
  9. Axure安装、破解、汉化、学习
  10. android9.0魅族16,彻底伤了,魅族16更新安卓9.0遥遥无期,工程师:升级费时费力不讨好...