Git从入门到熟练

1.Git的基本概念

    概念:git是一个开源的分布式版本控制系统,可以有效,高速处理从很小到很大的项目版本管理,Git可以帮助开发人员跟踪和管理代码的变化,保留历史记录,并协作开发。

2.Git安装

链接:https://pan.baidu.com/s/1VXh-SgbjYR8CGdWbRZMpHA?pwd=gbk1 
提取码:gbk1

  1. 安装过程,选择默认安装即可;
  2. 安装后,在开始菜单栏找到 Git Bash ,点击显示出类似命令行的窗口,即安装成功。

3.Git安装后的基本配置

  3.1 设置用户名和邮箱

目的:因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识

设置用户名 :git config --global user.name "用户名"

设置邮箱 :git config --global user.email "邮箱"

 --global 参数:(用了这个参数,表示你这台机器上所有的Git仓库都会 使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址)

4.Git文件的三种状态和工作区域

  1. 使用Git操作文件时,文件的三种状态如下:
    状态描述
    已提交(committed)表示数据已经保存在本地数据库
    已修改(modified)表示文件已修改,但是还未保存到本地数据库
    已暂存(staged)表示对已经修改的文件做了标记,让其在其次保存在提交的快照中

      

      2. Git项目的三个工作区域:工作区、暂存区和Git仓库

 5.创建本地仓库(创建版本库)

版本库:即是一个被Git管理的目录,里面的所有文件都可以被Git管理,每个文件的增删改,Git都可以跟踪记录,同时可以在通过记录的历史恢复文件。

  1. 创建一个文件夹,作为Git的本地仓库(可以在任意地方设置仓库,本人是在D盘)
  2. 对仓库进行初始化 :git init

6.常见命令

  1. git add  文件名 (工作区——>暂存区)
  2. git commit  -m "注释语句" (暂存区——>本地仓库)
  3. git status :查看修改后的状态(暂存区,工作区)
  4. git log :查看提交日志
  5. git init :初始化仓库 
  6. git reset  --hard commitID  :版本回退    commitID可以通过git log  或者  git  reflog查看,其中hard是一个指针,它指向当前所在的本地分支中最新的提交
  7. git  revert 完全删除最新的提交,并且删除相应的更改

7.案例演示

任务一:将新建的文件(git01.txt)提交到本地仓库

任务二:将修改后的git01.txt,提交到本地仓库

  1. 在本地仓库中新创建一个文件git01.txt
  2. 将处于工作区的git01.txt提交到暂存区
  3. 将处于暂存区的git01.txt提交到本地仓库中
  4. 修改git01.txt
  5. 查看git01.txt状态,将处于git01.txt(修改后的)提交到暂存区
  6. 将暂存区的git01.txt提交到本地仓库,并查看日志

8.分支

分支:可以将你的工作从开发的主线分离出来,进行修改开发,避免影响主线的开发 

1.git branch   :查看本地分支

2.git  branch  分支名   :创建本地分支

git branch fee1   //在本地创建一个新的分支,名字是fee1

3.git  checkout  分支名   :切换到指定分支

4.git merge  分支名   :合并分支(一个分支上的提交可以合并到另外一个分支)

5.git branch -d 分支名  :删除分支,需要做各种检查

6.git branch -D 分支名 :删除分支,强制删除

9.冲突

含义:当对不同的分支对同一个文件的同一行内容修改后,合并分支会发生冲突 

解决办法:手动解决

流程: 

  1. 处理文件中发生冲突的地方,选择自己需要的内容
  2. 将解决完冲突的文件加入暂存区
  3. 提交到仓库区

 解决方法一: 

  1. 使用命令 git merge 进行分支的合并 ,如果发送冲突,会停止在合并冲突的文件中
  2. 在合并冲突的文件中找到冲突的地方,手动修改代码
  3. 修改完冲突后,使用git add命令将修改后的文件加入缓存区(暂存区)
  4. 最后再使用git commit命令提交修改,完成合并操作

解决方法二:

  1. git fetch:先从远程仓库拉取最新版本的代码;
  2. git diff:查看本地代码与远程代码之间的差异;
  3. 手动修改代码,指定对代码的修改,通常使用编辑器来编辑冲突文件;
  4. git add:将修改后的文件重新添加至暂存区;
  5. git commit:提交修改后的代码。

10.Git远程仓库

gitHub:   https://github.com/  :是一个面向开源及私有软件项目的托管平台

码云:   https://gitee.com/  :是国内的一个代码托管平台

GitLab: https://about.gitlab.com/  :是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具

  10.1:在码云上新建远程仓库

  10.2:配置SSH公钥

  1. 生成公钥:ssh-keygen -t rsa
  2. 查看公钥   cat ~/.ssh/id_rsa.pub
  3. 在码云配置公钥
  4. 查看公钥是否配置成功   ssh -T git@gitee.com

  10.3将本地仓库的代码上传到远程仓库

  1. 步骤一:复制远端服务器的URL
  2. 步骤二建立本地仓库和远程仓库连接    git  remote add <远端名称> <仓库路径>
  3. 将本地仓库的东西上传到远程仓库   git push [-f] [--set-upstream][远端名称][本地分支名][:远端分支名]

      4. 注意事项: 如果在远程仓库中还不存在该分支(上传时指定的分支),则会在远程仓库中创建            一个名字相同的新的分支。

11. Git如何处理大型二进制文件

Git主要针对的是纯文本文件,而对于二进制文件(音频,图像....)处理相对较差 

          解决办法:通过Git LFS 进行大型二进制文件的管理 :

            Git LFS :可以将大型二进制文件存储在单独的存储库中,并使用指针来跟踪这些文件。当需要访问这些文件时,Git LFS会从远程存储库中自动下载所需的文件

12. 抓取,拉取,克隆

   12.1 抓取

 命令格式: git  fetch [远端名称] [分支名]

 含义: 将远程仓库的更新都抓取到本地,不进行合并

   12.2 拉取

命令格式: git  pull [远端名称] [分支名]

含义: 将远程仓库的修改拉到本地并自动进行合并

   12.3 克隆

命令格式:  git  clone <仓库路径> [本地仓库]

含义:将一个远程仓库克隆到本地

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值