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. hive与hbase

    作者:有点文链接:https://www.zhihu.com/question/21677041/answer/185664626来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  2. 013_HDFS文件合并上传putmarge功能(类似于hadoop fs -getmerge)

    场景 合并小文件,存放到HDFS上.例如,当需要分析来自许多服务器的Apache日志时,各个日志文件可能比较小,然而Hadoop更合适处理大文件,效率会更高,此时就需要合并分散的文件.如果先将所有文件 ...

  3. class_alias--为一个类创建别名

    class_alias--为一个类创建别名 bool class_alias ( string $original , string $alias [, bool $autoload = TRUE ] ...

  4. Java中Arrays.sort()和Collections.sort()

    1.简单示例 sort方法的使用非常的简单明了,下面的例子中,先定义一个比较Dog大小的Comparator,然后将其实例对象作为参数传给sort方法,通过此示例,你应该能够快速掌握Arrays.so ...

  5. MongoDB快速入门(五)- Where子句

    RDBMS Where子句等效于MongoDB 查询文档在一些条件的基础上,可以使用下面的操作 操作 语法 示例 RDBMS等效语句 Equality {<key>:<value&g ...

  6. springcloud-搭建服务注册中心

    创建服务注册中心 1.创建一个springboot 命名为eureka-server 1)添加Eureka依赖 pom.xml <?xml version="1.0" enc ...

  7. web.xml里报错:Multiple annotations found at this line:

    在web.xml 中添加错误页面配置,出现了这个报错 具体情况是这样的: 错误信息: Multiple annotations found at this line: - cvc-complex-ty ...

  8. 使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)

    说来惭愧,今天就写了个"hello world",了解了一下log4j的日志. 本来是想在控制台打印个log信息,也是遇到坎坷重重,开始也没去了解log4j就来使用,log4j配置 ...

  9. numpy array转置与两个array合并

    我们知道,用 .T 或者 .transpose() 都可以将一个矩阵进行转置. 但是一维数组转置的时候有个坑,光transpose没有用,需要指定shape参数, 在array中,当维数>=2, ...

  10. Codeforces 893E Counting Arrays:dp + 线性筛 + 分解质因数 + 组合数结论

    题目链接:http://codeforces.com/problemset/problem/893/E 题意: 共q组数据(q <= 10^5),每组数据给定x,y(x,y <= 10^6 ...