Git的学习

文章目录

  • 一、什么是Git
    • Git相关概念
  • 二、Git的下载
  • 三、Git代码托管服务
  • 四、Git常用命令
    • 4.1Git全局设置
    • 4.2 获取Git仓库
      • 获取Git仓库通常有两种方式:
        • 1.在本地初始化一个Git仓库(不常用)
        • 2.从远程仓库克隆(常用)
    • 4.3本地仓库操作
    • 4.4远程仓库操作
    • 4.5分支操作

一、什么是Git

Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git仓库来存储和管理这些文件,Git仓库分为两种:

本地仓库:开发人员自己电脑上的Git仓库
远程仓库:远程服务器上的Git仓库

那这些仓库怎么协调运作呢?关键在于以下三个动作

commit:提交,将本地文件和版本信息保存到本地仓库
push:推送,将本地仓库和版本信息上传到远程仓库
pull:拉取,将远程仓库文件和版本信息下载到本地仓库

Git相关概念

版本库:.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
工作区:包含.git文件夹的目录就是工作区,也成为工作目录,主要用于存放开发的代码
暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
Git的学习_第1张图片
Git工作区中文件的状态:
Git工作区中的文件存在两种状态:
untracked 未跟踪(违背纳入版本控制)
tracked 已跟踪(被纳入版本控制):
1)Unmodified 未修改状态
2)Modified 已修改状态
3)Staged 已暂存状态
注意:这些文件的状态会随着我们执行Git的命令发生变化

二、Git的下载

csdn搜一下就知道了

三、Git代码托管服务

常见的Git代码托管服务
Git中存在两种类型的仓库,即本地仓库和远程仓库。那我们如何让搭建Git远程仓库呢?
我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。

1.GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub
2.码云是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快
3.GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务

四、Git常用命令

4.1Git全局设置

当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息

在Git命令行中执行下面命令:

设置用户信息
git config --global user.name "用户名”
git config --global user.email "用户邮箱”

查看配置信息
git config --list

ps:上面设置的用户名和用户邮箱并不是我们在注册码云账号时使用的用户名和邮箱,此处可以随意设置

4.2 获取Git仓库

要使用Git对我们的代码进行版本控制,首先需要获得Git仓库

获取Git仓库通常有两种方式:

1.在本地初始化一个Git仓库(不常用)

执行步骤如下:
1.在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库
2.进入这个目录中,点击右键打开Git bash窗口
3.执行命令git init

如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功

2.从远程仓库克隆(常用)

可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地
命令如下:
git clone 远程仓库地址

注意:在克隆的时候注意仓库间不能嵌套,一定要注意是在那个目录下

4.3本地仓库操作

本地仓库常用命令如下
git status 查看文件状态
git add 将文件的修改加入暂存区
git reset 将暂存区的文件取消暂存或者是切换到指定版本
git commit 将暂存区的文件修改提交到版本库
git log 查看日志
注意:这些命令有的后面会跟文件名或其他东西

4.4远程仓库操作

前面执行的命令都是针对的本地仓库,下面是关于远程仓库的一些操作,具体包括:
git remote 查看远程仓库
git remote add 添加远程仓库
git clone 从远程仓库克隆
git pull 从远程仓库拉取 (git pull short-name branch-name)

git pull命令的作用是从远程仓库获取最新版本并合并到本地仓库
如果当前本地仓库不是从远程克隆,而是本地创建的仓库并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal:refusing to merge unrelated histories)
解决此问题可以在git pull命令后加入参数 --allow-unrelated-histories

git push 推送到远程仓库 (git push remote-name branch-name)

在使用git push命令将本地文件推送到码云远程仓库时,需要进行身份认证,认证通过才可以推送)

4.5分支操作

分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。同一个仓库可以有多个分支,各个分支互相独立、、互不干扰
通过git init命令创建本地仓库时默认会创建一个master分支
关于分支的命令如下:
git branch 查看分支

git branch 列出所有本地分支
git branch -r 列出所有远程分支
git branch -a 列出所有本地分支和远程分支

git branch name 创建分支
git checkout name 切换分支
git push shortName name 推送至远程仓库分支
git merge name 合并分支

你可能感兴趣的:(Git,git,学习,github)