git版本库介绍及本地创建的三种场景方式
作者:繁华似锦Fighting 发布时间:2023-07-11 11:22:18
1、Git版本库介绍
每个Git版本控制系统的主机中,都可以包含若干个本地版本库,一般情况下一个本地版本库对应一个项目,用于对某个特定项目中的本地文件进行版本管理。其实,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除等操作Git都能跟踪到,以便任何时刻都可以追踪历史,或者在将来某个时刻可以进行“还原”。
Git中版本库又名仓库,英文名Repository
,使用命令git init
来创建并初始化一个本地版本库。
初始化后,在当前目录下会出现一个名为.git
的目录,所有Git需要的数据和资源都存放在这个目录中。包括暂存区文件,版本记录文件,配置文件等。换句话说,如果你想从项目中删除Git的版本控制,但又要保留项目原文件,那么只需要将这个.git
目录删除即可。这样话,这个项目就与Git没有任何关系。
2、创建本地版本库
在日常工作当中,创建Git本地版本库的场景有两种。
场景一:创建一个空的本地版本库。
介绍:
这种情况是项目还没有代码,需要先创建一个Git本地版本库的时候。
在你专门存放Git版本库的文件夹中,执行git init your_project(项目名),这个时候Git会在当前路径下,创建一个和项目名称同名的文件夹,这个文件夹就是一个Git的裸仓库,里面的会有一个隐藏的.git
文件夹。
要进行开发的时候,只要进入到这个文件夹里面就可以了。
步骤:
直接用Git管理新建的项目
进入到Git本地版本库管理目录
git-repository
。查看目录内容。
执行
$ git init your_project
,创建Git本地版本库。查看Git本地版本库是否创建。
进入到刚刚创建的Git本地版本库。
查看Git本地版本库中的内容。
进入
.git
目录,进行查看。
演示:
说明
当我们执行完$ git init first_git_repo
命令之后,会出现下面一行提示。
Initialized empty Git repository in J:/git-repository/first_git_repo/.git/
意思是:初始化一个空的Git仓库,然后是仓库的路径。
.git
目录:这个文件夹是Git的核心内容,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。这个文件夹以后我们会详细的讲解。
后面显示(master)
表示默认创建了master
主分支。
提示:
我们也可以在
git-repository
目录中,先通过mkdir first_git_repo
,创建一个仓库目录,然后在进入这个目录中,执行git init
命令,和上边是一样的,这里就不演示了。如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
场景二:项目中已存在文件时,创建该项目的本地版本库。
介绍:
这种情况就是在创建仓库之前,项目中已经有一些代码文件了。换种方式说,在本地创建Git仓库,把代码纳入到Git管理中,提交到 GitHub。
针对这种情况,我们只需要进入到已有的项目代码所在的文件夹,然后执行git init
命令就可以了。
步骤:
把已有的项目文件的目录纳入Git管理
second_git_repo
目录是一个已有文件的项目目录。进入
second_git_repo
目录,查看内容。执行
git init
命令,把该目录纳入Git管理。该目录纳入Git管理后,查看目录以有
.git
目录。进入
.git
目录,进行查看。
演示:
场景三:在GitHub网站上创建仓库,克隆到本地。
1、进入GitHub网站,点击右上角的加号,选择穿件仓库。
2、进入到创建Git仓库页面。
Public:公有的,就是大家谁都能看得到的仓库,也能下载你仓库中的代码。
Private:私有的,你可以选择让谁看到,需要花钱
其他的不用管直接点击创建(Create repository
)。
3、查看创建的仓库,选择认证方式。
会有一个仓库列表,点击你刚刚创建的仓库。
https和ssh验证方式的区别 |
---|
https基于用户名密码的验证方式。 |
SSh基于公钥私钥的验证方式(sshkey的方式),之前讲过。 |
4、克隆仓库到本地
进入到你想克隆的位置的文件夹中。
执行git clone + 远程仓库路径。
查看git-repository-temp
目录中,已经clone出GitHub上创建的仓库了。
进入clone
到本地的项目TestNG中查看。
里边也有.git
文件夹,说明也被Git管理。
来源:https://www.cnblogs.com/liuyuelinfighting/p/16148594.html


猜你喜欢
- 西刺代理是一个国内IP代理,由于代理倒闭了,所以我就把原来的代码放出来供大家学习吧。镜像地址:https://www.blib.cn/url
- 一、scrapy1.1 概述Scrapy,Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构
- golang用于创建和发送电子邮件的库douceur - HTML 邮件中的内联 CSSemail - 一个健壮的、灵活的 email 库G
- 对于Mac上Homebrew安装的MySQL,默认情况下只能使用本地登录。而使用其它主机远程登录Mac上的MySQL则会被拒绝访问。下面修改
- 本文实例分析了python开发之str.format()用法。分享给大家供大家参考,具体如下:格式化一个字符串的输出结果,我们在很多地方都可
- 临时表与内存表内存表,指的是使用Memory引擎的表,建表语法是create table … engine=memory。这种 表的数据都保
- 检测自己当前系统环境中python是否已经安装该module,若未安装请自行安装检测自己的pycharm使用的环境变量是否与当前环境一致若不
- 1、jquery//获取value值$("#ddlSubmodel").val();//获取text值$("#
- 本文实例讲述了JavaScript闭包与作用域链。分享给大家供大家参考,具体如下:闭包定义闭包指的是有权访问另一个函数作用域中的变量的函数。
- 实现了宽度、高度、透明度的渐变,还能以高度宽度中点为中心,还扩展成以任意点为中心渐变(实例中以点击点为中心)。<!DOCTYPE ht
- char(n)是定长格式,格式为char(n)的字段固定占用n个字符宽度,如果实际存放的数据长度超过n将被截取多出部分,如果长度小于n就用空
- 这篇文章主要介绍了pycharm运行scrapy过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- Jira提供了完善的RESTful API,如果不想直接请求API接口可以使用Python的Jira库来操作JiraJira Python文
- 目录一、梳理功能二、准备数据库三、构造和数据库相关的实体类书籍用户NormalUser类四、封装数据库相关操作数据库链接操作针对书籍表操作针
- 新建一个lvm磁盘,这里我建的lv为mydatalv,挂载到了/data下[root@localhost ~]# lvs LV
- 本文实例分析了Python作用域用法。分享给大家供大家参考,具体如下:每一个编程语言都有变量的作用域的概念,Python也不例外,以下是Py
- 无意中看到一位学员的屏保,感觉挺有意思的,就把它实现了下来效果如下:<!DOCTYPE html PUBLIC "-//W3
- 有一些问题可能会遇到同元素多列去重问题,下面介绍一种非常简单效率也很快的做法,用pandas来实现。首先我们看一下数据类型:G1 G2a b
- 引言昨天把系分的项目又加了一点逻辑判断,比如已经下单的菜品不能减少,不能重复下单,应该先下单再支付等…弄完购物车的逻辑之后,发现一直没有管备
- 需要在两个文件中实现:首先,在talker.asp(在线名单)中做如下处理:<%p1=trim(application("v