一 、git的安装

windows下面的安装:https://git-for-windows.github.io  从这里下载完全无脑安装。

安装完成后,在开始菜单里找到“Git”->“Git Bash”  表示安装成功。

之后,在命令行输入:

$ git config --global user.name "Your Name"

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

二 、

1.创建版本库

第一步,打开git,切换到你想要创建版本库的文件夹。

例如:

$ mkdir learngit

$ cd learngit

$ pwd

/Users

pwd命令用于显示当前目录。在我的Mac上,这个仓库位于/Users。

PS:使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。

第二步,通过git init命令把这个目录变成Git可以管理的仓库(git的初始化操作)

2.把文件添加到版本库

在Learngite文件夹下面创建一个文件命名为readme.txt.随意添加内容在文档里面。

千万不要使用Windows自带的记事本编辑任何文本文件

第一步,用命令git add告诉Git,把文件添加到仓库

$ git add readme.txt

执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。

第二步,用命令git commit告诉Git,把文件提交到仓库:

$ git commit -m "wrote a readme file"

[master (root-commit) cb926e7] wrote a readme file

1 file changed, 2 insertions(+)

create mode 100644 readme.txt

git commit命令,-m后面输入的是本次提交的说明,最好是有意义的,便于以后的修改。

三 版本控制

1.运行git status命令查看当前文件的状态:

$ git status

# On branch master

# Changes not staged for commit:

#   (use "git add <file>..." to update what will be committed)

#   (use "git checkout -- <file>..." to discard changes in working directory)

#

#    modified:   readme.txt

#

no changes added to commit (use "git add" and/or "git commit -a")

git status命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,readme.txt被修改过了,但还没有准备提交的修改。

2.运用git diff 查看文件的改变,如果有改变可以用git add 提交,之后用git commit -m ‘修改提示’,进行更新版本。

四 版本回溯

1 用 git log 查看git日志。

git log命令显示从最近到最远的提交日志

git log --pretty=oneline   命令是用来查看git的版本号(commit id)十六进制表示

2.用git reset --hard HEAD^命令回到上一个版本,head~10回到之前第十个版本。

$ git reset --hard HEAD^

.git reset --hard commit id,表示回溯到指定的版本

PS:工作区域与暂存区域的理解

把文件往Git版本库里添加的时候,是分两步执行的:

第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

git diff HEAD -- readme.txt  命令表示查看工作区的版本与版本库最新的版本的区别。

Git是跟踪修改的,每次修改,如果不add到暂存区,那就不会加入到commit中。

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

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

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

总之,就是让这个文件回到最近一次git commit或git add时的状态。

2 第二种情况 加入修改的文件已经添加到暂存区,第一步使用 git reset HEAD file(文件名)撤销暂存,再使用 git checkout -- file(文件名)取消修改。

3 rm file(文件名) 删除一个文件。

(1)如果确定删除 使用删除命令 git rm file(文件名) 彻底删除文件,之后需要 git commit  -m ‘删除了一个xxx文件’.

(2)如果删错了,使用git checkout -- file(文件名)

五 、 远程库创建

要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone 地址 命令克隆

查看当前配置有哪些远程仓库,可以用 Git remote  -v 命令

六 创建分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。

用git log --graph命令可以看到分支合并图。

切换远程库的位置: git remote set-url origin https://github.com/hollychengjianhua/learngit.git

github 自学文档 希望可以给初学的人一些帮助的更多相关文章

  1. Readthedocs+Github搭建文档

    一.文档撰写前提 环境部署: > git clone https://github.com/toooney/demo-readthedocs.git > pip install sphin ...

  2. JAVA代码规范 标签: java文档工作 2016-06-12 21:50 277人阅读 评论(5) 收藏

    开始做java的ITOO了,近期的工作内容就是按照代码规范来改自己负责的代码,之前做机房收费系统的时候,也是经常验收的,甚至于我们上次验收的时候,老师也去了.对于我们的代码规范,老师其实是很重视的,他 ...

  3. LaTeX相关自学文档

    install-latex-guide-zh-cn: lshort-zh-cn: 百度网盘链接:https://pan.baidu.com/s/1cBv9Fu8KFaf0QFZ7_slxmw 提取码: ...

  4. CRMEB客户管理+电商管理系统帮助文档,送给有需要的人

    本项目还在不断开发完善中,如有建议或问题请言

  5. Laravel(PHP)使用Swagger生成API文档不完全指南 - 基本概念和环境搭建 - 简书

    在PHPer中,很多人听说过Swagger,部分人知道Swagger是用来做API文档的,然而只有少数人真正知道怎么正确使用Swagger,因为PHP界和Swagger相关的资料实在是太少了.所以鄙人 ...

  6. java 文档自动生成的神器 idoc

    写文档 作为一名开发者,每个人都要写代码. 工作中,几乎每一位开发者都要写文档. 因为工作是人和人的协作,产品要写需求文档,开发要写详细设计文档,接口文档. 可是,作为一个懒人,平时最讨厌的一件事情就 ...

  7. JSP实现word文档的上传,在线预览,下载

    前两天帮同学实现在线预览word文档中的内容,而且需要提供可以下载的链接!在网上找了好久,都没有什么可行的方法,只得用最笨的方法来实现了.希望得到各位大神的指教.下面我就具体谈谈自己的实现过程,总结一 ...

  8. C#实现通过模板自动创建Word文档的方法

    原文地址:http://www.jb51.net/article/55332.htm   本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...

  9. WPF界面设计技巧(11)-认知流文档 & 小议WPF的野心

    原文:WPF界面设计技巧(11)-认知流文档 & 小议WPF的野心 流文档是WPF中的一种独特的文档承载格式,它的书写和呈现方式都很像HTML,它也几乎具备了HTML的绝大多数优势,并提供了更 ...

随机推荐

  1. CSS3实战开发:使用CSS3实现photoshop的过滤效果

    原文:CSS3实战开发:使用CSS3实现photoshop的过滤效果 我们知道,使用Photoshop来调整图像的亮度和对比度,或者将图片转化为灰度等等是很常见的功能.今天我将给大家介绍几个新特性,我 ...

  2. android文件缓存,并SD卡创建目录未能解决和bitmap内存溢出解决

    1.相关代码: 加入权限: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" ...

  3. 使用Windows2003创建DHCP服务器 - 进阶者系列 - 学习者系列文章

    Windows 2003提供的DHCP服务还是挺强大的.下面大概介绍下DHCP服务器的配置. 1.  通过控制面板安装DHCP服务 2.  打开DHCP配置项 3.  选择 新建作用域 4.  输入名 ...

  4. 为mongodb加上权限

    我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全 ...

  5. Ubuntu 14.04 字体设置

    ubuntu 14.04消息公布后,我迫不及待地安装和使用.不知道怎么搞的,整个系统彻底改变了字体.有罪,看. 后来.听说文泉驿米黑效果不错.就试了一下,确实还行. 以下是设置方法: 1.安装文泉驿米 ...

  6. 读书笔记—CLR via C#章节3

    这本书这几年零零散散读过两三遍了,作为经典书籍,应该重复读反复读,既然我现在开始写博了,我也准备把以前觉得经典的好书重读细读一遍,并且将笔记整理到博客中,好记性不如烂笔头,同时也在写的过程中也可以加深 ...

  7. 迁移Model元数据设置项

    .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序) 阅读目录: 1.需求背景介绍(Model元数据设置项应该与View绑定而非ViewModel) 1 ...

  8. greenlet微线程

    Greenlet简介 一个 “greenlet” 是一个很小的独立微线程.可以把它想像成一个堆栈帧,栈底是初始调用,而栈顶是当前greenlet的暂停位置.你使用greenlet创建一堆这样的堆 栈, ...

  9. 旅游[SPFA或是最小生成树][简单算法的灵活题]

    旅行 [问题描述] Z 小镇是一个景色宜人的地方,吸引来自各地的观光客来此旅游观光.Z 小镇附近共有N 个景点(编号为1,2,3,…,N),这些景点被M 条道路连接着,所有道路都是双向的,两个景点之间 ...

  10. 个人计算机安装hadoop全分布

    一.工具说明 设备:实体主机一台 校园网络 虚拟设备:VMware下安装的ubuntu12.04版本三台,分别是master,slave1,slave2 二.ubuntu安装篇 前提知识:在windo ...