Git 学习

Git学习

1. Git是什么?

   使用Git是为了记录自己对文件的改动
    ---Git是目前世界上最先进的分布式版本控制系统(没有之一)
    ---Git操作一般只往Git数据库中添加数据,很难使用 Git 从数据库中删除数据

1.1 Git的三种状态

已修改(modified)
	--已修改表示修改了文件,但还没保存到数据库中。
	
已暂存(staged)	
	--已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
	
已提交(committed)
 	--已提交表示数据已经安全地保存在本地数据库中。

1.2 Git的三个阶段

工作区、暂存区以及 Git 目录

在这里插入图片描述

工作区
	--工作区是对项目的某个版本独立提取出来的内容。 这些 Git仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
	
暂存区
	--暂存区是一个文件,保存了下次将要提交的文件列表信息,一般在Git仓库目录中。
	
Git仓库目录
	--Git仓库目录是 Git 用来保存项目的元数据和对象数据库的地方。 这是 Git 中最重要的部分,从其它计算机克隆仓库时,复制的就是这里的数据。

1.3 基本的 Git 工作流程

1.在工作区中修改文件。

2.将你想要下次提交的更改选择性地暂存,这样只会将更改的部分添加到暂存区。

3.提交更新,找到暂存区的文件,将快照永久性存储到 Git 目录。

在这里插入图片描述

一般工作流程如下:
	---克隆 Git 资源作为工作目录。
	---在克隆的资源上添加或修改文件。
	---如果其他人修改了,你可以更新资源。
	---在提交前查看修改。
	---提交修改。
	---在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

2. Git的安装与配置

在Windows上安装Git
	--Git官网下载 https://git-scm.com/download/win 
    一、分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库
    二、Git是分布式版本控制系统,所以每个机器都必须自报家门:你的名字和Email地址
    	在桌面右击,点击git bash here设置你的用户名和邮件地址
    		 git config --global user.name"diced-bean-0605"
    		$ git config --global user.email "29*****382@qq.com"
    三、如果想要检查你的配置,可以使用 
    	1. git config --list 命令来列出所有 Git 当时能找到的配置。
    		$ git config --list
    		...
    		user.name=diced-bean-0605
    		user.email=29*****382@qq.com
    		credential.https://gitee.com.provider=generic
    		
    	2. git config <key>: 来检查 Git 的某一项配置
    		$ git config user.name
    		diced-bean-0605	
    

3. 获取Git仓库

通常有两种获取 Git 项目仓库的方式:
	1.将尚未进行版本控制的本地目录转换为 Git 仓库;
	2.从其它服务器 克隆 一个已存在的 Git 仓库。

3.1 Git初始化

1.尚未进行版本控制的项目目录,用 Git 来控制它:
	新建文件夹,使用VScode打开,在文件上右击--在集成终端中运行(Open in Integrated Terminal)
之后执行	$ git init
	--该命令将创建一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是 Git 仓库的骨干。
2.在已存在文件的文件夹(而非空文件夹)中进行版本控制,应该开始追踪这些文件并进行初始提交。
	可以通过 git add 命令来指定所需的文件来进行追踪,然后执行 git commit,现在,已经得到了一个存在被追踪文件与初始提交的 Git 仓库。

3.2 克隆现有仓库

获得一份已经存在了的 Git 仓库的拷贝,这时就要用到 git clone 命令。
	--Git克隆的是该 Git 仓库服务器上的几乎所有数据,而不是仅仅复制完成你的工作所需要文件。
克隆仓库的命令是 git clone <url>
*创建文件夹,在文件夹中右键-Git Bash Here 执行git clone <url>命令

4. 常用的Git命令

命令说明
git init初始化本地仓库
git add .添加所有工作区中的资源到暂存区
git commit -m’提交的描述’将暂存区内容添加到本地仓库中。
git clone拷贝一份远程仓库,也就是下载一个项目。
git status查看仓库当前的状态,显示有变更的文件。
版本穿梭说明
git log --pretty=oneline查看日志
git reflog查看过往操作日志
git reset --hard 32099f重置到指定的版本号
撤销和修改说明
情况一:若修改已经在暂存区中情况二:若修改已经在工作区中
1、git restore --staged 文件信息1、 git restore文件信息 或
2、git restore 文件信息1、 git checkout 文件信息
删除说明
git rm 文件信息将文件从工作区中删除
git rm --cached 文件信息将文件从暂存区和工作区中删除
1 、若想恢复2 、若想彻底删除
第一步:git resetgit commit -m ‘删除c.js’ //提交至本地仓库
第二步:git checkout 1.Git/c.js

5. 将代码推入远程仓库

    若是第一次推入至远程仓库
    1.创建本地目录
    2.git init
    3.git add .
    4.git commit -m '信息'
    5.git remote add origin https://gitee.com/diced-bean-0605/job-code.git
    6.git push -u origin master    
若是更新代码,再次推入至远程仓库
1.git add .  将代码从工作区 -> 暂存区
2.git commit -m '信息'   将代码从暂存区 -> 本地仓库
3.git push   将代码本地仓库 -> 推入远程仓库

6. 将远程仓库代码拉入本地

    1.新建文件夹,通过 git clone https://gitee.com/diced-bean-0605/job-code.git,将代码克隆至本地文件夹中
    2.通过VS Code软件,打开文件夹至workspace
    3.通过git pull 拉取远程仓库的代码

附: 遇到的问题

1. VS Code中修改代码,git没有显示变化

解决参考:https://blog.csdn.net/weixin_47084248/article/details/122414233

疑问:VS Code中修改代码,git没有显示变化 
	解决:在最外层文件夹终端输入 rm .git ,重新 git init

在这里插入图片描述

  • 问题所在:在项目最外层文件夹git init了,产生了一个.git文件。
  • 解决方法:在终端进入最外层文件夹,输入命令:rm -rf .git //(删除)

2. 运行git add . 出现错误

fatal: Unable to create 'C:/Users/Desktop/CODE/Git/.git/index.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
解决方法:进入Git工作路径下,找到.git文件,如果找不到就点击查看,选择显示隐藏的内容,然后进入,删除index.lock文件,重启Git即可。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值