参照的是http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000这里的,git教程确实写得不错

懒人一个,只记录,请看原文好理解

用vpn下载的git官方的windows客户端,与原文的客户端感觉不太一样,使用上应该是一样的是,这类东西本人喜欢官方的东西,以免不必要的麻烦

git 命令:

1.git配置

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

我的图形界面配置的(哪个方便用哪个,别觉得命令行高级),没有设置密码,奇怪吧?

因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。

注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

2.创建版本库

$ git init

初始化当前目录为版本库(只在本地)

3.提交文件

$ git add filename   
$ git commit -m "some tips"

可一次add多个文件,一次commit

以上就是三部基本使用情况了,下次我们来的高级的用法

4.返回过去版本 | 回到未来版本:

$ git reset --hard HEAD^ // 上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
$ git reset --hard 3628164  //版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。

$ git log  
$ git reflog //所有修改的历史都在这里,上面的版本号3628164就是这里查的



5.撤销修改 (没有推送到远程版本库)

搞清楚原理:工作区,暂存区,版本库

$ git checkout -- readme.txt

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

$ git reset HEAD readme.txt 

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

  

6.删除文件

Git中,删除也是一个修改操作

$ git rm test.txt

$ git commit -m "remove test.txt"

还有一个重要的概念“分支”,现在都只在默认的分支“master“

最新文章

  1. 【初码干货】在Window Server 2016中使用Web Deploy方式发布.NET Web应用的重新梳理
  2. InstallShield2013 error 6109
  3. 【转】ZigBee是如何组网的?
  4. Spring中Bean的配置:基于XML文件的方式
  5. 【python】os模块
  6. Oracle笔记 六、PL/SQL简单语句块、变量定义
  7. 【iOS】iOS消息推送机制的实现
  8. ODBC访问不到Server的问题
  9. POJ1573Robot Motion
  10. VLAN是什么
  11. 《 UNIX网络编程》源码的使用
  12. Runnable、Callable、Future和FutureTask用法
  13. Java_io体系之PipedWriter、PipedReader简介、走进源码及示例——14
  14. Linux中组 与 用户的管理
  15. kafka集群broker频繁挂掉问题解决方案
  16. r.js合并实践
  17. java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader
  18. Ruby语法基础(二)
  19. nginx的server块如何支持php
  20. BZOJ4993 [Usaco2017 Feb]Why Did the Cow Cross the Road II 动态规划 树状数组

热门文章

  1. 如何使用ChatGPT来自动化Python任务
  2. screenfetch—最炫酷的查看你的设备信息
  3. 学习ASP.NET Core Blazor编程系列十九——文件上传(下)
  4. [机器学习] PCA (主成分分析)详解
  5. python之路47 django路由层配置 虚拟环境
  6. 迁移学习(MixMatch)《MixMatch: A Holistic Approach to Semi-Supervised Learning》
  7. IOS14广告追踪
  8. 对象的变为私有方法不可改动 seal freeze
  9. ng-alain全局配置NzMessageService
  10. Grafana 系列文章(五):Grafana Explore 查询管理