『现学现忘』Git基础 — 8、Git创建本地版本库
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
目录,进行查看。
演示:
以上就是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管理。
以上就是三种创建Git的形式。
『现学现忘』Git基础 — 8、Git创建本地版本库的更多相关文章
- Git学习(1)-本地版本库的创建
我用的是Git-2.14.3-64-bit版本,在windows64位上运行的,把软件分享下链接:http://pan.baidu.com/s/1jIoZ7Xc 密码:13q2. 安装及配置自行百度, ...
- 安装git,创建本地版本库
安装 由于我使用的是Ubuntu,因此安装很简单,输入:sudo apt-get install git 如果是其他Linux版本,可以直接通过源码安装.先从Git官网下载源码,然后解压,依次输入:. ...
- Git创建本地版本库
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或 ...
- 『现学现忘』Docker基础 — 41、将本地镜像推送到阿里云
目录 1.准备工作 2.阿里云容器镜像仓库的使用 (1)创建命名空间 (2)创建容器镜像 (3)查看阿里云镜像仓库的信息 3.将本地Docker镜像推送到阿里云 (1)登陆阿里云 (2)给镜像生成版本 ...
- 『现学现忘』Git基础 — 13、Git的基础操作
目录 1.Git最基础的使用方式 (1)初始化本地版本库 (2)查看文件的状态 (3)把文件添加到暂存区 (4)把暂存区的内容提交到本地版本库 2.总结本文用到的Git命令 1.Git最基础的使用方式 ...
- 『现学现忘』Git基础 — 18、Git对象的总结
目录 1.Git操作最基本的流程 2.工作目录中文件的状态 3.Git效率说明 提示:前面三篇文章已经分别的对blob对象.tree对象.commit对象进行了详细的说明,这篇文章我们总结一下,Git ...
- 『现学现忘』Git对象 — 16、Tree对象详解
目录 1.Tree对象介绍 2.Tree对象说明 (1)初始化一个新的本地版本库 (2)创建一个树对象(重点) (3)创建第二个文件(重点) (4)将第一个树对象加入暂存区,使其成为新的树对 3.总结 ...
- 『现学现忘』Git基础 — 21、git diff命令
目录 1.git diff 命令说明 2.比较工作区与暂存区中文件的差别 3.比较暂存区与本地库中文件的差别 4.总结git diff命令常见用法 5.总结 1.git diff 命令说明 在comm ...
- 『现学现忘』Git基础 — 22、Git中文件重命名
目录 1.用学过的命令进行文件重命名 2.使用git mv命令进行文件重命名 我们这篇文章来说说在Git中如何进行文件重命名. 提示一下,下面所说明的是对已经被Git管理的文件进行重命名,未被Git追 ...
随机推荐
- Prometheus+alertmanager告警配置-2
prometheus 告警 prometheus 通过alertmanager进行告警 实现监控告警的步骤: 在prometheus中定义告警规则rule_files alertmanager配置告警 ...
- mysql 在已存在的表中添加/删除字段约束AUTO_INCREMENT遇到的问题
1. 在已存在的表中添加字段约束AUTO_INCREMENT修饰符 mysql> alter table user modify uid int auto_increment primary k ...
- 整理分布式锁:业务场景&分布式锁家族&实现原理
1.引入业务场景 业务场景一出现: 因为小T刚接手项目,正在吭哧吭哧对熟悉着代码.部署架构.在看代码过程中发现,下单这块代码可能会出现问题,这可是分布式部署的,如果多个用户同时购买同一个商品,就可能导 ...
- Java中会存在内存泄漏吗,请简单描述?
为了搞清楚Java程序是否有内存泄露存在,我们首先了解一下什么是内存泄露:程序运行过程中会不断地分配内存空间:那些不再使用的内存空间应该即时回收它们,从而保证系统可以再次使用这些内存.如果存在无用的内 ...
- CKEditor禁用浏览服务器的功能
在CKeditor的config.js文件中,添加以下内容,重启服务器,图片.flash.video中的浏览服务器按钮就会消失掉 /*按下" 浏览服务器"按钮时应启动的外部文件管理 ...
- 学习Kvm(五)
KVM(一)搭建部署与概述 一,KVM概述 1.1 虚拟化概述 在计算机技术中,虚拟化意味着创建设备或资源的虚拟版本,如服务器,存储设备,网络或者操作系统等等 [x] 虚拟化技术分类: 系统虚拟化(我 ...
- Leetcode26——删除有序数组中的重复项(双指针法)
Leetcode26--删除有序数组中的重复项(双指针法) 1. 题目简述 给你一个升序排列的数组 nums ,请你原地 删除重复出现的元素,使每个元素只出现一次 ,返回删除后数组的新长度.元素的相对 ...
- ctfhub web信息泄露备份文件下载(vim缓存 Ds-Store)
Vim缓存 进入环境由于不懂得vim是什么借鉴大佬的博客 网页提示flag在index.php中我们按着这个思路去找 将文件保存下来因为是swp文件我们用kail进行打开 使用vim -r index ...
- python学习笔记(六)——程序调试
在我们平时编写程序时,常常会遇到各种错误,俗称BUG.而我们程序猿的工作常常需要对程序进行调试,也就是所谓的debug. 程序调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法 ...
- '\ddd'转义字符与八进制转换
所有的ASCII码都可以用"\"加数字(一般是8进制数字)来表示.而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等, ...