git版本库介绍及本地创建的三种场景方式

目录
  • 1、Git版本库介绍
  • 2、创建本地版本库
    • 场景一:创建一个空的本地版本库。
    • 场景二:项目中已存在文件时,创建该项目的本地版本库。
    • 场景三:在GitHub网站上创建仓库,克隆到本地。

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创建本地版本库的资料请关注我们其它相关文章!

(0)

相关推荐

  • 使用Git向GitHub上传更新内容

    1.在上文中clone的项目中,添加新文件Test.text 2.右击项目空白处,选择“TortoiseGit”——“添加” 3.在弹出框里,勾选新增加的文件,点击确定,把文件添加到本地仓库 4.提交到本地仓库: 4.1 接上面添加完成的步骤,直接点击提交 4.2 右击项目空白处,选择“提交” 5.在弹出的窗口,输入日志信息内容,然后点击“提交” 6.推送到远端GitHub仓库 6.1接上面提交到本地仓库完成后,直接点击推送 6.2项目文件夹空白处,右击,选择“TortoiseGit”——“推送

  • git版本库创建拓展添加文件到版本库教程

    目录 1.创建一个版本库 2.把文件添加到版本库 (1)首先这里再明确一下 (2)使用Windows的童鞋要特别注意: (3)把文件添加到版本库 3.总结 今天看关于Git的博客,发现总结关于Git仓库的文档,写的思路很清晰.可以和前一篇文章,对照的看,可以更加清晰理解. git-reference在线文档: http://shouce.jb51.net/gitbook/Getting-Started/index.html 版本库又名仓库,英文名repository,你可以简单理解成一个目录,这

  • git工作区暂存区与版本库基本理解及提交流程

    目录 一.git的三个区的基本理解 1.工作区 2.版本库 3.暂存区 二.工作区中.git目录 三.通过提交流程理解三个区 1.工作区新加文件 index.html 2.将index.html提交到暂存区 3.将暂存区内的内容提交到版本库 4.将本地版本推送到github上 一.git的三个区的基本理解 1.工作区 上节课我们已经从github上clone了工程到本地,这个git-demo1的文件夹内部,就是我们的工作区,编写代码就在这个目录下进行,比如: 更加直观一点,工作区就是指我们项目的

  • Git Bash终端默认路径的设置查看修改及拓展图文详解

    目录 1.Git Bash默认路径 2.如何查看Git Bash终端默认路径 3.如何修改Git Bash终端的默认路径 4.拓展:指定目录进入Git Bash终端 5.注意事项 1.Git Bash默认路径 在windows系统上操作Git的客户端是Git Bash. 安装完Git Bash之后,双击打开,如下图: 使用pwd命令查看当前路径: 每次打开Git Bash都进入默认的目录中. win7系统就是Git安装目录的根目录. win10系统在系统盘的用户目录中,例如:C:\Users\L

  • Git的基本操作流程及工作区版本库暂存区的关系

    目录 1.Git的基本操作流程 2.工作区.暂存区.版本库的区别 (1)工作区 (2)版本库 (3)暂存区 (4)通过新增文件理解三个区的关系 (5)说明 1.Git的基本操作流程 初始化一个本地版本库,每个版本库仅需要执行一次. 将中央版本库内容克隆到本地版本库,每个客户机仅需要执行一次. 添加指定文件到版本控制管理(这一步只是添加到Git暂存区). 将添加.修改等操作,提交到本地版本库(将暂存区的内容提交到本地版本库).如果远程仓库的内容被别人修改了,需要先同步远程的内容,直接git pul

  • git版本库介绍及本地创建的三种场景方式

    目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版本库介绍 每个Git版本控制系统的主机中,都可以包含若干个本地版本库,一般情况下一个本地版本库对应一个项目,用于对某个特定项目中的本地文件进行版本管理.其实,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除等操作Git都能跟踪到,以便任何时刻都可以追踪历史

  • Python使用GitPython操作Git版本库的方法

    GitPython 是一个用于操作 Git 版本库的 python 包,它提供了一系列的对象模型(库 - Repo.树 - Tree.提交 - Commit等),用于操作版本库中的相应对象. 1.导包 from git import * 2.初始化git仓库 CURRENT_DIR = os.path.dirname(os.path.abspath(__file__)) empty_repo = Repo.init(os.path.join(CURRENT_DIR, 'bbs')) # bbs目

  • Git工作流演示及三种工作方式

    目录 集中式工作流(不常用) Forking 工作流(偶尔使用) GitFlow 工作流(最流行) Git工作流演示 集中式工作流(不常用) 集中式工作流像SVN一样,以中央仓库作为项目所有修改的单点实体.所有修改都提交到 Master分支上.这种方式与 SVN 的主要区别就是开发人员有本地库,但是Git 很多特性并没有用到. Forking 工作流(偶尔使用) Forking 工作流是在 GitFlow 基础上,充分利用了 Git 的 Fork 和 pull request 的功能以达到代码审

  • Vue网络请求的三种实现方式介绍

    目录 1.XMLHttpRequest发送请求 2.fetch发送请求 3.axios请求库(Vue中推荐写法) 模拟发送get和post请求 网络请求时发送用户认证信息 请求拦截器 响应拦截器 用户管理 在进行 Vue 的网络请求之前,我们先写一些假数据: users.json: [ { "id": 1, "name": "张三" }, { "id": 2, "name": "李四"

  • iOS开发中UIWebView的加载本地数据的三种方式

    UIWebView是IOS内置的浏览器,可以浏览网页,打开文档 html/htm pdf docx txt等格式的文件. safari浏览器就是通过UIWebView做的. 服务器将MIME的标识符等放入传送的数据中告诉浏览器使用那种插件读取相关文件. uiwebview加载各种本地文件(通过loadData方法): UIWebView加载内容的三种方式: 1 加载本地数据文件 指定文件的MIMEType 编码格式使用@"UTF-8" 2加载html字符串(可以加载全部或者部分html

  • springboot集成本地缓存Caffeine的三种使用方式(小结)

    目录 第一种方式(只使用Caffeine) 第二种方式(使用Caffeine和spring cache) 第三种方式(使用Caffeine和spring cache) 第一种方式(只使用Caffeine) gradle添加依赖 dependencies { implementation 'org.springframework.boot:spring-boot-starter-jdbc' implementation 'org.springframework.boot:spring-boot-s

  • Java创建线程三种方式的优缺点

    Java创建线程主要有三种方式:继承Thread类创建线程.实现Runnable接口创建线程和实现Callable和Future创建线程. 继承Thread类 public class Thread1 extends Thread { @Override public void run() { for (int i = 0; i < 10; i++) { System.out.println(getName() + ": " + i); } } public static voi

  • Linux下rpm、yum和源码三种安装方式详细介绍

    第1章 源码安装 源码包安装会比RPM包安装慢,是因为RPM的软件包是根据特定系统和平台而指定的,经常一种 程序会提供很多RPM包的格式,用户根据系统情况选择适合的RPM包直接安装,而源码包相当于 通用型,可以是用于多个系统中,所以需要运行configure脚本来检测环境,生成对应的安装信息. 1.1 源码安装优点 1.文档齐全 2.因为可以定位到代码,所以debug方便 3.本机兼容性最好(由于是本机编译的,只要编译通过,就没有各种库的依赖的问题) 1.2 源码安装的缺点 1.编译麻烦 2.缺

  • vue组件创建的三种方式小结

    1.使用Vue.extend创建全局的Vue组件 //1.1 使用vue.extend创建组件 var com1 = Vue.extend({ //通过template属性指定组件要展示的html结构 template : "<h3>使用vue.extend创建的组件</h3>" }) //1.2使用Vue.component('组件名称',创建出来的组件模板对象) Vue.component('myCom1',com1) 把名称以标签的形式放到页面中<m

随机推荐