Git 本地库基本教程

这篇具有很好参考价值的文章主要介绍了Git 本地库基本教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一. Git 概述

1.1   何为版本控制 

1.2   为什么需要版本控制 

 1.3   版本控制工具

1.3.1   集中式版本控制工具

1.3.2   分布式版本控制系统

1.4   Git简介

1.5   Git工作机制 

1.6   Git 和代码托管中心

1.6.1   局域网

1.6.2   互联网

二. Git 安装

 三. Git 常用命令

 3.1   设置用户签名 

3.1.1   基本语法

 3.1.2   说明

3.2   初始化本地库

3.2.1   基本语法

3.2.2   案例实操 

3.3   查看本地库状态

3.3.1   基本语法

3.3.2   初次查看:工作区没有任何文件

3.3.3   新增文件 & 再次查看状态(检测到未追踪的文件)

3.4   添加暂存区

 3.4.1   基本语法

3.4.2   查看状态(检测到暂存区有新文件)

3.5   提交本地库

3.5.1   基本语法

3.5.2   查看提交(没有文件需要提交)

3.6   修改文件

3.6.1   基本语法

​编辑

3.7   历史版本(版本穿梭)

3.7.1   查看历史版本

​编辑

3.7.2   版本穿梭

四. Git分支操作 

4.1   什么是分支?

4.2   分支的好处

4.3   分支的操作

4.3.1   查看分支

①基本语法

②实操案例

4.3.2   创建分支

①基本语法

②实操案例

4.3.3   切换分支

①基本语法

②实操案例

4.3.4   修改分支

①基本语法:vim 文件名

②修改

③查看本地库状态(git status)

4.3.5   合并分支

①基本语法

②实操案例

4.3.6   产生冲突

①冲突产生的原因

②制造冲突

③产生冲突

④手动合并

4.3.7   解决冲突

①add(添加到暂存区)

②commit(执行提交)

4.3.8   删除分支

①基本语法

②删除本地分支

​编辑

③删除远程分支

4.4   创建分支和切换分支图解


一. Git 概述

  • Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
  • Git易于学习、占地面积小、性能极快。它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion、CVS、Perforce和ClearCase等版本控制工具。

1.1   何为版本控制 

  • 版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。
  • 版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。

1.2   为什么需要版本控制 

  • 从个人开发过渡到团队协作。

 1.3   版本控制工具

1.3.1   集中式版本控制工具

CVS、SVN(Subversion)、VSS……

  • 集中化的版本控制系统诸如CVS、SVN等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连接到这台服务器,取出最新的文件或者提交更新。多年以来这已经成为版本控制系统的标准做法。

优缺点: 

  • 优点:每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌握每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来的轻松容易。
  • 缺点:中央服务器的单点故障期间,谁都无法提交更新,也就无法协同工作。

1.3.2   分布式版本控制系统

Git、Mercurial、Bazaar、Darcs……

  • 像Git这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。
  • 分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:
  1. 服务器断网的情况下也可以进行开发(因为版本控制是在本地进行)
  2. 每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)

1.4   Git简介

Git 本地库基本教程,git,github

1.5   Git工作机制 

Git 本地库基本教程,git,github

  • 工作区:代码存放的磁盘的目录位置 

1.6   Git 和代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库。(从本地库推送(push)到远程库)

1.6.1   局域网

        GitLab(基于局域网)

1.6.2   互联网

        Github(基于外网)

        Gitee码云(基于国内网站)

二. Git 安装

1.搜索git官网,会有最新版git下载链接Githttps://git-scm.com/Git 本地库基本教程,git,github

 2.点击Download for Windows,进入如下界面中点击下载(自动下载与电脑位数匹配的程序)

Git 本地库基本教程,git,github

 3.下载之后双击安装

①GNU霸王条款,无脑同意next就行

Git 本地库基本教程,git,github

②安装路径(最好放在没有中文且没有空格的路径里面)

 Git 本地库基本教程,git,github

③Git选项配置,推荐默认配置,直接next

Git 本地库基本教程,git,github

 ④后面一直next就行了 

4.如何看是否安装成功

  • 右击桌面选择显示更多选项,有下面的选择则安装成功

Git 本地库基本教程,git,github

 三. Git 常用命令

命令名称 作用
git config --global user.name   用户名 设置用户签名
git config --global user.email   邮箱 设置用户签名
git init 初始化本地库

git status

查看本地库状态
git add   文件名 添加到暂存区
git commit -m "日志信息"   文件名 提交到本地库
git reflog 查看历史记录
git reset --hard   版本号 版本穿梭

 3.1   设置用户签名 

3.1.1   基本语法

git config --global user.name   用户名

git config --global user.email   邮箱

  1. 打开open git bash here
  2. 按照基本语法设置用户名和邮箱(实际和虚拟的皆行)
  3. 设置好了之后去c盘用户文件夹找到.gitconfig打开,显示你设置的用户名和邮箱即为成功。

Git 本地库基本教程,git,github

 3.1.2   说明

        签名的作用是区分不同的操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git首次安装必须设置一下用户签名,否则无法提交代码。

        注意:这里设置的用户签名和邮箱与将来登录GitHub(或其他代码托管中心)的账号没有任何关系。

3.2   初始化本地库

3.2.1   基本语法

git  init

3.2.2   案例实操 

Git 本地库基本教程,git,github

如图,初始化成功后该文件夹就会出现一个 .git 的文件夹。(如果没有,点击文件夹上方查看打开隐藏项目)

  • Windows系统有D:、C:的盘符存在,所以在文件夹中进入git bush here比较好。
  • git bash here界面里面的命令操作和Linus系统是一样的。

3.3   查看本地库状态

3.3.1   基本语法

git status

3.3.2   初次查看:工作区没有任何文件

Git 本地库基本教程,git,github

  • On branch master  // 当前本地库位于分支master
  • No commits yet  //目前还没有提交过任何东西
  • nothing to commit   //没有东西可以提交

3.3.3   新增文件 & 再次查看状态(检测到未追踪的文件)

Git 本地库基本教程,git,github

  • untracker files   //未被追踪的文件(只存在工作区域,git并未追踪 )
  • 使用git add去追踪文件

3.4   添加暂存区

 3.4.1   基本语法

git add name(这个name是你要添加的文件或者文件夹的名称)

3.4.2   查看状态(检测到暂存区有新文件)

文件从红色字体变成了绿色字体,说明git已经追踪(知道)了这个文件。

Git 本地库基本教程,git,github

使用“git rm --cached 文件名”可以从暂存区删除你要删除的文件。

3.5   提交本地库

3.5.1   基本语法

git commit -m "日志信息" name(文件名)

3.5.2   查看提交(没有文件需要提交)

Git 本地库基本教程,git,github

  • git bash窗口中第三行显示的就是你commit成功的状态,后面 test hello world 就是基本语法中的“日志信息”。

  • git bush窗口第四行提示:1个文件被改变,7行内容被插入。

3.6   修改文件

3.6.1   基本语法

  • vim name(文件名)
  • 也可以直接打开文件进行修改,不需要在 git bash here 窗口通过指令进行修改。

Git 本地库基本教程,git,github

文件已被修改(相当于新文件),需要从工作区再次add到暂存区,并且需要commit。

3.7   历史版本(版本穿梭)

3.7.1   查看历史版本

  • git reflog   查看版本信息
  • git log   查看版本详细信息

Git 本地库基本教程,git,github

3.7.2   版本穿梭

git reset --hard 版本号(上图中黄色的字符串就是版本号,分为详细版本号和精简版本号)

穿越之后,你的指针就指向你的穿越目标所对应的版本,并修改时从指针所指为基础开始修改。

附:cat 文件名——可以查看文件内容

四. Git分支操作 

  • 从右向左看!!!

Git 本地库基本教程,git,github

4.1   什么是分支?

        在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个人物的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也就是指针的运用)

Git 本地库基本教程,git,github

4.2   分支的好处

        同时并行推进多个功能开发,提高开发效率。

        各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

4.3   分支的操作

命令名称 作用
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支上

4.3.1   查看分支

①基本语法

git branch -v

②实操案例

Git 本地库基本教程,git,github

4.3.2   创建分支

①基本语法

git branch 分支名

②实操案例

(创建一个test分支,图中我的test分支有内容是因为他会把主分支master的内容复制了一份)

Git 本地库基本教程,git,github

!git后面括号内有个蓝色的master,说明当前分支仍处于master分支

4.3.3   切换分支

①基本语法

git checkout 分支名

②实操案例

(括号内蓝色的分支为test)

Git 本地库基本教程,git,github

4.3.4   修改分支

①基本语法:vim 文件名

Git 本地库基本教程,git,github

②修改

Git 本地库基本教程,git,github

细节讲解:Windows下 git commit 后会进入vim界面。 输入小写字母 i ,此时进入编辑模式,可以输入你想输入的内容。 按下 esc 键,此时退出编辑模式,输入英文语法下的冒号 : ,再输入 wq 即可保存退出

Git 本地库基本教程,git,github

  • 可以看到我的代码已经经过了修改
③查看本地库状态(git status)

第一行on branch test说明此时不在主分支master上,然后修改过后并没有add、commit、push等行为,显示红色(具体细节往前翻至3.3、3.4、3.5)

Git 本地库基本教程,git,github

add后

Git 本地库基本教程,git,github

commit后并查看(cat)

Git 本地库基本教程,git,github

4.3.5   合并分支

切换会原主线master发现并没有修改内容,仍然是原内容

Git 本地库基本教程,git,github

①基本语法

git merge 分支名

②实操案例

(文件内容已修改,这里test分支是基于原master分支上进行修改,因此合并十分顺利,没有产生冲突,具体内容看下一小节)

Git 本地库基本教程,git,github

4.3.6   产生冲突

①冲突产生的原因

        合并分支时,两个分支在同一文件的同一个位置有两套完全不同的修改。Git无法替我们决定使用哪一个。必须人为决定新代码的内容。

②制造冲突

先修改master主线的内容

Git 本地库基本教程,git,github

再修改test支线的代码内容

Git 本地库基本教程,git,github

③产生冲突

(第二行显示冲突;第三行显示自动合并失败)

Git 本地库基本教程,git,github

注意:下一行代码()中提示werging说明正在合并中

Git 本地库基本教程,git,github

④手动合并

vim打开文件后

Git 本地库基本教程,git,github

  • <<<<<<< HEAD 表示当前分支

(这中间是当前分支的修改内容)

  • ======= 分界线(楚河汉界)

(这中间是产生冲突的分支修改内容)

  • >>>>>>> test 表示与主线产生冲突的分支

手动合并很简单啊,只需要把你想要留下的部分留下,不想要的删除,之后再把<<<<=====>>>>这些特殊符号删除即可(这里保持代码行数不变)

Git 本地库基本教程,git,github

这里我删除了三条分界线,第一部分的return和第二部分的printf,然后esc,wq退出即可。

Git 本地库基本教程,git,github

4.3.7   解决冲突

由4.3.6 手动合并之后,我们还需要两步操作(add、commit)

①add(添加到暂存区)

Git 本地库基本教程,git,github

②commit(执行提交)

注意注意!!!

        此时使用git commit命令时不能带文件名!!!

Git 本地库基本教程,git,github

这里我尝试commit时加上了文件名,然后给git报错:不知道commit哪一个分支里面的demo.c

Git 本地库基本教程,git,github

不带文件名之后成功合并,可以看下一行代码()中已经没有merging,而是master

!!!这时候的主线还在master上,所以手动合并的结果在master上显示,并不会在test中有所修改。

Git 本地库基本教程,git,github

4.3.8   删除分支

注意:当你在你要删除的分支上的时候,git是不允许你去删除分支的!

①基本语法
// 删除本地分支
git branch -d localBranchName

// 删除远程分支
git push origin --delete remoteBranchName
②删除本地分支

        如果你还在一个分支上,那么 Git 是不允许你删除这个分支的。所以,请记得退出分支:git checkout master

        通过 git branch -d <branch>删除一个分支,比如:git branch -d fix/authentication

        当一个分支被推送并合并到远程分支后,-d 才会本地删除该分支。如果一个分支还没有被推送或者合并,那么可以使用-D强制删除它。

Git 本地库基本教程,git,github
③删除远程分支
  • 使用这个命令可以远程删除分支:git push <remote> --delete <branch>
  • 比如: git push origin --delete fix/authentication,这个分支就被远程删除了。
  • 你也可以使用这行简短的命令来远程删除分支:git push <remote> :<branch>,比如:git push origin :fix/authentication
  • 如果你得到以下错误消息,可能是因为其他人已经删除了这个分支。
error: unable to push to unqualified destination: remoteBranchName The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to 'git@repository_name'
  • 使用以下命令同步分支列表:
git fetch -p

-p 的意思是“精简”。这样,你的分支列表里就不会显示已远程被删除的分支了。

4.4   创建分支和切换分支图解

master 

Git 本地库基本教程,git,github

创建hot-fix(热修)分支【热修是常用分支名称,本人为了偷懒就写了一个test】 

Git 本地库基本教程,git,github

将hot-fix分支合并至master主线 

Git 本地库基本教程,git,github

总结:master、hot-fix其实都是指向具体版本记录的指针。当前所在的分支,其实是由HEAD决定的。所以创建分支的本质就是多创建一个指针。

        HEAD如果指向master,那么我们就在master分支上;如果指向hot-fix,我们就在hot-fix分支上。(在.git里面找到HEAD文件可以查看当前指针所指向分支)

        所以啊,所谓的切换分支,其实就是移动HEAD指针指向不同的地方。 (wok!真心累死我了,爆肝完第四章) 文章来源地址https://www.toymoban.com/news/detail-712900.html

到了这里,关于Git 本地库基本教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【详细教程】关于如何使用Git&GitHub的基本操作汇总&GitHub的密钥配置 ->(个人学习记录笔记)

    点击 官网链接 后,进入Git官网,下载安装包 然后根据系统类型进行下载,一般为windows 一般选择64位的安装器版本 下载好后开始安装 点击Next 默认即可,Next 默认即可,Next Next Next Next Next Next Next Next Next Next install即可 我们在桌面随便创建一个文件夹例如code 进入code文件夹 鼠

    2024年02月06日
    浏览(47)
  • 超详细Git下载安装配置使用教程,从入门到上传本地项目到GitHub,一文就够了

    身为一个合格的程序Yuan,Git工具我们必然是要掌握的,那么对于小白来讲一定有这几个疑问,Git是什么?怎么使用?怎么配置?Git命令是什么?本文将从这几方面帮助大家了解和使用Git。 Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版

    2024年02月03日
    浏览(27)
  • 【Git小白使用教程,一看就会用,快速上手Git(二——建立本地仓库和对Gitee或GitHub远程仓库的拉取和推送】

    1.1、先在本地创建一个文件夹用作本地仓库,里面可以放你的项目代码或者你想要上传到远程仓库的文件。 1.2、然后在文件夹内通过cmd打开终端命令行 git init ——初始化本地仓库,运行成功后,文件夹内会出现一个.git文件 也可以在文件夹内右击鼠标,选择git bash打开git命令

    2024年02月04日
    浏览(48)
  • Git上传本地代码到Github

    参考 https://zhuanlan.zhihu.com/p/138305054 每次上传前先拉取,保证其他人提交更新一起同步, 如果是将远程仓库的仓库已经克隆到本地的项目,可以不执行第6步,如果本地代码库没有同步线上的,必须执行第6步,目的是将本地和远程仓库进行合并

    2024年02月05日
    浏览(45)
  • 【Git】本地搭建Gitee、Github环境

      

    2024年02月12日
    浏览(40)
  • Git基础——基本的 Git本地操作

            本文涵盖了你在使用Git的绝大多数时间里会用到的所有基础命令。学完之后,你应该能够配置并初始化Git仓库、开始或停止跟踪文件、暂存或者提交更改。我们也会讲授如何让Git忽略某些文件和文件模式,如何简单快速地撤销错误操作,如何浏览项目版本历史并查

    2024年02月11日
    浏览(37)
  • 【Git 从入门到精通】使用Git将本地代码推送到Github

    打开github.com,点击右上角加号,点击第一个选项。 填写库的基本信息,如果你想代码开源就选择public,否则就选择private。 填好信息后,点击创建将会到下面一个界面(框框中的链接就是库的地址): 上面一个链接就是刚才创建库的地址。 在操作远程库之前可以将远程库添

    2024年02月07日
    浏览(34)
  • 配置git并把本地项目连接github

    一.配置git 1.下载git(Git),但推荐使用国内镜像下载(CNPM Binaries Mirror) 选好64和版本号下载,全部点下一步 下载完成后打开终端,输入 git --version 出现版本号则说明安装成功 然后继续在终端内操作 2.配置用户名: git config --global user.name “你的用户名”  3.配置邮箱: git

    2024年02月06日
    浏览(32)
  • 【Github】git本地仓库建立与远程连接

    Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git客户端官网下载链接:https://git-scm.com/downloads 选择适合自己本机的版本下载。 双击“Git-2.17.0-64-bit.exe”,进入安装导向界面,点击Next 选择安装路径,next next 开始菜单快捷方式

    2024年02月09日
    浏览(55)
  • 使用Git将GitHub仓库下载到本地

    前记: git svn sourcetree gitee github gitlab gitblit gitbucket gitolite gogs 版本控制 | 仓库管理 ---- 系列工程笔记. Platform:Windows 10 Git version:git version 2.32.0.windows.1 Function:使用Git将GitHub仓库下载到本地 目录 ​一. 以下是将GitHub仓库下载到本地的步骤: 1. 确保你的电脑上已经安装了git

    2024年02月02日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包