1. 安装

  官网地址:https://git-scm.com/downloads

  我这里使用的是git version 2.19.1.windows.1,全程傻瓜式安装,点下一步即可,可以把命令模式和图形界面模式都勾选上。
  

2. Git基本原理

  

3. 本地git使用

(1)创建仓库

  仓库即repository,就是一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的添加,修改和删除,Git都能追踪和还原

  创建文件夹:git_project

  进入git_project文件夹,右键,点击git bash here,输入git init

  

  git_project文件夹下会多了.git文件夹,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了

(2)添加文件  

  创建文件test.py

  

  将test.py添加到git暂存区---->git add test.py

  

  查看git status 提示:No commits yet,即未提交,只有提交后才算真正添加成功

(3)提交文件

  将test.py提交到git仓库---->git commit -m 'add test.py'

  -m后面的字符串为本次操作的说明,自己添加

  

(4)修改文件

  修改test.py文件,查看状态

  

  再次添加和提交

  git add test.py

  git commit -m "modify test file"

(5)查看日志

  git log

  

  可以看到两次日志记录,如果嫌输出的信息太多,眼花缭乱的,可以添加--pretty=oneline

  

  上面看到的一大串a3b865f4576....是comit id(版本号),这个和SVN不一样,commit id是一个SHA1计算出来的一个非常大的数字,用十六进制表示

(6)版本回退和版本选择

  Git必须知道当前版本是哪一个版本,在Git中,用HEAD表示当前版本,上一个版本是HEAD^,上上个版本是HEAD^^,往上100个版本可以写成HEAD~100

  git reset --hard 99a542

  

  果然,又回到了第一个版本

  再看下git log

  

  只有add test.py版本的日志信息,modify test file的commit id 看不到了,那要怎么回退到modify的版本呢?我们可以使用git reflog命令

  

  这样就又回到了modify的版本

(7)撤销修改

  撤销修改有两种情况:

  一是git add前你不知道修改了什么,想还原到修改前的版本

  再次修改文件内容为print("modify test file second"),现在想撤销,这时候如果记得要修改的内容,当然好,可以直接文本操作,但若不知道之前修改的内容了,可以进行如下操作:

  

  git提示可以使用git checkout -- <file>恢复工作区的变化

  

  二是git add后git commit前,你想撤销修改

  

  git提示可以使用git reset HEAD <file>进行恢复

  

  查看下当前状态,发现文件已从存储区恢复到工作区

  

(8) 删除文件

     rm test.py

    git status

  

  git commit -m "delete test.py"

  

  

3. 使用git将项目上传到github

  参考博客:https://www.cnblogs.com/cxk1995/p/5800196.html

Git和Github使用说明的更多相关文章

  1. GitHub 使用说明

    GitHub使用教程 附件是Github 使用说明: GitHub使用说明.pdf 目录 1      注册帐户... 2 2      登录帐户... 2 3      创建仓库... 2 4    ...

  2. git以及gitHub的使用说明书

    一.使用说明 1.Git与github的功能: Git是世界上最先进的分布式版本控制系统,也就是用来记录你的项目代码历史变更信息的工具:github就是用来存储你的代码以及变更信息的云端平台: 2.优 ...

  3. 简单使用Git和Github来管理自己的代码和读书笔记

    原文链接:http://my.oschina.net/bxxfighting/blog/378196   先注册github.com的账号官方网站: https://github.com/ 注册界面, ...

  4. git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议

    1.安装及配置默认路径 Windows中从GitHub上面:https://git-for-windows.github.io/ 下载安装好git后(双击,改一下需要的安装路径,一路确定就好了),安装 ...

  5. git与github安装、配置、pull、push

    操作系统是Ubuntu 16.04 LTS 64bit 1 安装git (1)安装 sudo apt-get install git-core (2)一些全局变量的初始化 在本地建立一个文件夹,然后做 ...

  6. 转:sublime上使用git连接github

    "工欲善其事,必先利其器." 这是古人的教诲,也是一个高效率的工程师需要遵循的法则之一.从大学开始写Java使用了JBuilder,Eclipse,后来写PHP用了Zend,写Ja ...

  7. git与github使用

    Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的关联 六. ...

  8. linux下git以及github的连接与使用

    简单理解 Git 的思想和基本的工作原理,能够更好的进一步和使用Git.在开始学习Git 的时候,最好不要把Git的各种概念和其他的版本控制系统诸如 Subversion 等相比,否则容易混淆每个操作 ...

  9. Git和Github简单教程

    原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...

随机推荐

  1. LeetCode:寻找数组的中心索引【668】

    LeetCode:寻找数组的中心索引[668] 题目描述 给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法. 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和 ...

  2. bootstrap插件实用方法

    完全通过js來配置 <p><a id="YOUR_BUTTON_FOR_POPOVER" class="btn btn-primary" ro ...

  3. 每天一个Linux命令(58)sudo命令

        sudo命令用来以其他身份来执行命令,预设的身份为root.     (1)用法:     用法:  sudo  [参数]  [命令]     (2)功能:     功能:  sudo可以针对 ...

  4. “中兴捧月”比赛之——二叉查找树(BST)树的最短路径Java求解

    问题描述: BST树,又称二叉查找树,求其到所有叶子节点路径的最小值 测试用例一:  10 5 20 返回15: 测试用例二: 100 20 70 110 120 10 null null 89 nu ...

  5. sql中in和exists的区别效率问题 转

    in 和exists in是把外表和内表作hash 连接,而exists 是对外表作loop 循环,每次loop 循环再对内表进行查询. 一直以来认为exists 比in 效率高的说法是不准确的.如果 ...

  6. imx6qsbd lvds dtc

    lvds显示屏调试参考 1.基于飞思卡尔imxsolosabresd开发板Linux-3.10.53 lvds屏幕调试: http://blog.csdn.net/qq_37375427/articl ...

  7. 常用模块---sys&logging&序列化模块(json&pickle)

    sys 模块 sys.argv 命令行参数List,第一个元素是程序本身路径,通常用来避免io 阻塞 print('欢迎进入') info=sys.argv ': print('login succe ...

  8. NAS、SAN、DAS 说明

    NAS 说明 1.NAS(Network Attached Storage:网络附属存储) 2.NAS 是一种采用直接与网络介质相连的特殊设备实现数据存储的机制. 3.NAS本身能够支持多种协议(如N ...

  9. LVS 介绍

    LVS 介绍 说明: LVS是Linux Virtual Server的简称 LVS是一个实现负载均衡的开源软件项目 LVS效率要高于Nginx LVS工作在ISO的第4层(传输层) LVS架构有三层 ...

  10. CSS3展开带弹性动画的手风琴菜单

    在线演示 本地下载