• 本地仓库是个.git隐藏文件

以下为演示Git单人本地仓库操作

  • 1.安装git
  1. sudo apt-get install git
  2. 密码:skylark
  • 2.查看git安装结果
  1. git
  • 3.创建项目
    • 在桌面创建test文件夹,表示是工作项目
  1. Desktop/test/
  • 4.创建本地仓库
    • 进入到test,并创建本地仓库.git
    • 新创建的本地仓库.git是个空仓库
  1. cd Desktop/test/
  2. git init

    

    • 创建本地仓库.git

    

  • 5.配置个人信息
  1. git config user.name '张三'
  2. git config user.email 'zhangsan@163.com'

    • 配置个人信息后

     

默认不配置的话,会使用全局配置里面的用户名和邮箱 全局git配置文件路径:~/.gitconfig

  • 6.新建py文件
    • 在项目文件test里面创建login.py文件,用于版本控制演示

     

  • 7.查看文件状态
    • 红色表示新建文件或者新修改的文件,都在工作区.
    • 绿色表示文件在暂存区
    • 新建的login.py文件在工作区,需要添加到暂存区并提交到仓库区
  1. git status

  

  • 8.将工作区文件添加到暂存区
  1. # 添加项目中所有文件
  2. git add .
  3. 或者
  4. # 添加指定文件
  5. git add login.py

  

  • 9.将暂存区文件提交到仓库区
    • commit会生成一条版本记录
    • -m后面是版本描述信息

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

  

  • 10.接下来就可以在login.py文件中编辑代码
    • 代码编辑完成后即可进行addcommit操作
    • 提示:添加和提交合并命令

  1. git commit -am "版本描述"
    • 提交两次代码,会有两个版本记录

  • 11.查看历史版本
  1. git log
  2. 或者
  3. git reflog

  

git reflog 可以查看所有分支的所有操作记录(包括commit和reset的操作),包括已经被删除的commit记录,git log 则不能察看已经删除了的commit记录

  • 12.回退版本

    • 方案一:

      • HEAD表示当前最新版本
      • HEAD^表示当前最新版本的前一个版本
      • HEAD^^表示当前最新版本的前两个版本,以此类推...
      • HEAD~1表示当前最新版本的前一个版本
      • HEAD~10表示当前最新版本的前10个版本,以此类推...

  1. git reset --hard HEAD^

    • 方案二:当版本非常多时可选择的方案
      • 通过每个版本的版本号回退到指定版本 

  1. git reset --hard 版本号

   

  

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

      • 撤销工作区代码

        • 新加代码num3 = 30,不add到暂存区,保留在工作区        

  1. git checkout 文件名

  

  

      • 撤销暂存区代码
        • 新加代码num3 = 30,并add到暂存区
  1. # 第一步:将暂存区代码撤销到工作区
  2. git reset HEAD 文件名
  3. # 第二步:撤销工作区代码
  4. git checkout 文件名

  

  • 14.对比版本
    • 对比版本库与工作区

      • 新加代码num3 = 30,不add到暂存区,保留在工作区
      • git diff HEAD -- login.py

    • 对比版本库
      • 新加代码num3 = 30,并add到暂存区
      • 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 -- 文件名

  

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

  1. 01-Git单人本地仓库操作

    Git源代码管理 Git(多人协同开发同一个项目),作用就是源代码管理,为什么需要源代码管理呢,方便多人协同开发,并且方便版本控制. Git管理源代码特点: 1.Git是分布式管理.服务器和客户端都有 ...

  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. SpringBoot2.0+Mybatis+PageHelper+Redis实现缓存

    1.在maven引入相关的依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactI ...

  2. deb文件怎么安装

    deb 是 ubuntu .debian 的格式.rpm 是 redhat .fedora .suse 的格式.deb是debian发行版的软件包ubuntu是基于debian 发行的 所有可以用.d ...

  3. Maven学习总结(一)——pom.xml文件配置详解

    <build>标签:<plugins>给出构建过程中所用到的插件 <plugins> <plugin> <groupId>org.apach ...

  4. ZT 设计模式六大原则(5):迪米特法则

    转贴: 设计模式六大原则(5):迪米特法则   原帖子的后续评论里面很多值得仔细去看 切记!像21楼 21楼 chenshufei2 2012-09-23 12:47发表 [回复] 上个例子,就是方法 ...

  5. 分享上传图片shell的绕过过滤的几种方法

    一般网站图片上传功能都对文件进行过滤,防止webshell写入.但不同的程序对过滤也不一样,如何突破过滤继续上传? 本文总结了七种方法,可以突破! 1.文件头+GIF89a法.(php)//这个很好理 ...

  6. 巧用padding生成正方形DIV

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Chosen三级联动

    上一篇介绍了  Chosen 的使用,这篇介绍联动.看代码: var addressResolve = function (options) { //检测用户传进来的参数是否合法 if (!isVal ...

  8. batik-all-1.7

    处理highcharts导出图片出现中文乱码所用到的jar包

  9. 【转】XZip and XUnzip - Add zip and/or unzip to your app with no extra .lib or .dll

    原文:http://www.codeproject.com/Articles/4135/XZip-and-XUnzip-Add-zip-and-or-unzip-to-your-app-w Downl ...

  10. HDU 6386 Age of Moyu 【BFS + 优先队列优化】

    任意门:http://acm.hdu.edu.cn/showproblem.php?pid=6386 Age of Moyu Time Limit: 5000/2500 MS (Java/Others ...