Git源代码管理

  Git(多人协同开发同一个项目),作用就是源代码管理,为什么需要源代码管理呢,方便多人协同开发,并且方便版本控制。

Git管理源代码特点:

  1、Git是分布式管理。服务器和客户端都有版本控制能力,通过代码的提交与合并。(意思就是说每台电脑都可以有版本控制能力,代码管理能力)。

  2、Git会在根目录下创建一个.git隐藏文件夹,作为本地代码仓库。

Git操作流程:

Git服务器------>本地仓库(.Git)-------->客户端------->本地仓库------>Git服务器

从图中可以看出,从远程仓库clone数据到本地仓库(.git),然后在客户端上编辑等,commit到本地仓库,然后在把本地仓库push给远程仓库(即服务器仓库),远程仓库pull到本地仓库,在到客户端。

工作区暂存区和仓库区

  工作区:

 对于添加,修改,删除文件的操作,都发生在工作区中。

  暂存区:

暂存区指将工作区中的操作完成小阶段的存储,是版本库的一部分。  

  仓库区:

仓库区表示个人开发的一个小阶段的完成

  1、仓库区中记录的各版本是可以查看并回退的

  2、但是在暂存区的版本一旦提交就再也没有了 

Git单人本地仓库操作

  本地仓库是个隐藏文件(.git)。

1、安装git(linux系统)(windows百度)

  1. sudo apt-get install git

2、检查安装结果

  1. git

3、创建项目(linux直接在桌面创建文件夹)

    在F盘目录下创建一个文件夹gitTest,表示工作项目:

4、创建本地仓库

  进入到刚才创建的gitTest,并创建本地仓库.git,新建的本地仓库是个空仓库。

  1、

  2、创建仓库

  1. git init

出现上面英文表示安装成功空仓库。

5、配置个人信息

  1. git config user.name 'lishuntao'
  2. git config user.email '1259553287@qq.com'

打开查看隐藏文件,因为我们创建的项目是隐藏的。

6、新建py文件

  在项目文件gitText里面创建login.py文件,用于演示。

 7、查看文件状态

  1. git status

红色表示新键文件或者新修改的文件,都在工作区。绿色表示文件在暂存区。新建的login.py文件在工作区,需要添加到暂存区并提交到仓库区。

8、将工作区文件添加到暂存区

  1. git add login.py#添加指定文件
  2.  
  3. git add . #添加所有文件

 9、将暂存区文件提交到仓库区

  1. git commit -m "版本描述"

commit会生成一条版本记录 -m后面是版本描述信息

 10、接下来可以在login.py文件中编辑代码

代码编辑完成后即可进行addcommit操作,还有添加和提交的合并命令

  1. git commit -am "版本描述"

11、查看历史版本

  1. git log
  2.  
  3. git reflog#都是一样的

12、回退版本

  1、

  1. HEAD表示当前最新版本
  2. HEAD^表示当前最新版本的前一个版本
  3. HEAD^^表示当前最新版本的前两个版本,以此类推...
  4. HEAD~1表示当前最新版本的前一个版本
  5. HEAD~10表示当前最新版本的前10个版本,以此类推...
  1. git reset --hard HEAD^

 2、当版本非常多的时候选择的方案(通过每个版本的版本号回退到指定版本)

  1. git reset --hard 版本号

文件为空!!!!说明跳转到第一次的版本了。

13、撤销修改

只能撤销工作区、暂存区的代码,不能撤销仓库区的代码。撤销仓库区的代码就相当于回退版本操作。

  撤销工作区代码

  1. git checkout 文件名

撤销暂存区代码

  1. # 第一步:将暂存区代码撤销到工作区
  2. git reset HEAD 文件名
  3. # 第二步:撤销工作区代码
  4. git checkout 文件名

 14、对比版本库

新加代码 sum4 = 40,不add到暂存区:

对比版本库与工作区:

  1. git diff HEAD -- login.py

 对比版本库

  1. git diff HEAD HEAD^ -- login.py

 15、删除文件:删除文件分为确定删除和误删

在项目中新建test.py文件,并添加暂存区和提交到仓库。

确定删除处理:

  1. # 删除文件
  2. rm 文件名
  3. # git确定删除文件,对比添加文件git add
  4. git rm 文件名
  5. # 删除后记录删除操作版本
  6. git commit -m '删除描述'

误删处理:撤销修改即可:

  1. # 删除文件(误删)
  2. rm 文件名
  3. # git撤销修改
  4. git checkout -- 文件名

01-Git单人本地仓库操作的更多相关文章

  1. Git单人本地仓库操作

    本地仓库是个.git隐藏文件 以下为演示Git单人本地仓库操作 1.安装git sudo apt-get install git 密码:skylark 2.查看git安装结果 git 3.创建项目 在 ...

  2. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  3. github仓库主页介绍、用git管理本地仓库和github仓库、搭建网站

    github仓库主页介绍 名词解释: 工作区: 添加.编辑.修改文件等动作 暂存区: 暂存已经修改的文件,最后统一提交到git中 git(仓库): 最终确定的文件保存到仓库,成为一个新的版本,并且对他 ...

  4. 使用Git初始化本地仓库并首次提交代码

    本文介绍使用Git初始化本地仓库,并首次提交代码到远程仓库GitLab上面. 首先,登录GitLab,创建一个新项目的私人仓库: 然后,在本地仓库(就是你写代码文件夹),右键,Git Bash Her ...

  5. 使用 Git 删除本地仓库和远端仓库文件

    使用 git bash 来删除 一.将文件(夹)添加到暂存区 这里假设本地和远端都有一个 test.txt 文件先在本地删除,通过 ·git status 查看通过git add test.txt 添 ...

  6. git原理-本地仓库认识

    项目人员使用git,几乎70%的工作都是在本地仓库完成的.由此可见本地仓库的重要性. 下面我们就通过一些基本的命令讲下git的本地仓库的结构,存储流程,数据类型,如何存储...... 仓库结构 大家都 ...

  7. 和同事合作开发,使用局域网 git创建本地仓库

    转自原文 和同事合作开发,使用局域网 git创建本地仓库 1.仓库 建一个空文件夹来做仓库,例如建为 cangku 1.1 cd 到 cangku目录下 创建远程仓库容器 mkdir  mycangk ...

  8. Git创建本地仓库&把pycharm项目添加GitHub仓库上

    一.创建本地仓库 1.1.下载Git地址:https://git-scm.com/downloads 下载完,一路next就可以 1.2.打开Git Bash输入: #创建一个learngit目录 $ ...

  9. 如何使用Git建立本地仓库并上传代码到GitHub

    使用Git建立本地仓库并上传代码到GitHub 工具/原料   电脑安装git客户端.注册github账号并登陆 方法/步骤     到本地项目文件夹右键选择git bash here   输入个人信 ...

随机推荐

  1. Eclipse中如何添加相对路径的外部jar包

    在eclipse中进行java编程的时候,常常需要引用外部jar包.而采用相对路径引用jar包可以大大方便java工程的拷贝,这样使得java工程从一个路径转移到另一个路径时不用大费周章的修改外包ja ...

  2. LNMP(5)

    目录 一.实战 1.安装 安装nginx 数据库 php wordpress 2.三者建立联系 nginx和php建立联系 php与mariadb建立关系 二.数据分离 三.理论 静态和动态 web应 ...

  3. CCPC 2019 秦皇岛 Angle Beats

    题目 给出P个点,然后给出Q个询问,问从P中选出两个点和给的点能组成直角三角形的方法个数.-O2,时间限制5秒. \[2\leqslant P\leqslant 2000,\qquad 1\leqsl ...

  4. 学java可以做些什么

    学java可以做些什么 对于很多新手来说,刚开始接触Java会很迷惘,不知道Java可以做什么.其实Java 可以做的东西太多了,手机游戏.中间件.软件.网站,电脑游戏,以及现在流行的安卓手机app等 ...

  5. Python的标准库介绍与常用的第三方库

    Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...

  6. Git教程---由浅入深

    初学者很难找到一个由浅入深,学完后能立刻上手的Git教程 Git用户 V&Git专家 Git是一个工具,是目前世界上最先进的分布式版本控制系统(没有之一). 集中式的版本控制系统  V& ...

  7. Egg 企业级应用开发框架的搭建

    在之前的文章中我们介绍了一下基于 nodejs 开发的 koa2 框架,在之前还有 espress 框架,接下来我们再学习一个 Egg.js. Egg.js 中文官网:https://eggjs.or ...

  8. SpringBoot2.0 基础案例(17):自定义启动页,项目打包和指定运行环境

    本文源码 GitHub地址:知了一笑 https://github.com/cicadasmile/spring-boot-base 一.打包简介 springboot的打包方式有很多种.可以打war ...

  9. INT 3 中断调试处理流程

    Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html INT 3 中断调试处理流程 一.调试器如何下INT 3 断点 1 ...

  10. 在vue组件中设置定时器和清除定时器

    由于项目中难免会碰到需要实时刷新,无论是获取短信码,还是在支付完成后轮询获取当前最新支付状态,这时就需要用到定时器.但是,定时器如果不及时合理地清除,会造成业务逻辑混乱甚至应用卡死的情况,这个时就需要 ...