一、简单认识:

1、初始化文件夹为版本控制文件夹,首先建立一个文件夹,进入这个文件夹以后输入git init初始化这个文件夹。

2、Git几种位置概念

1、本地代码:本地更改完代码以后,虽然是存放在git的文件夹里面,但是没有添加到待提交列表里面。

2、待提交列表:执行完git add 文件名,但是未执行git commit -m ‘说明’命令的状态。

3、本地仓库:git会在本地建立一个本地的仓库,执行完git commit以后会提交到本地仓库里面。

4、远程仓库:例如Github、coding.net之类的远程仓库。

1、本地代码状态:

2、待提交列表(需要提交的改动):

3、本地仓库(将待提交列表的文件提交到本地仓库)

4、查看本地仓库的文件,

commit:是当前提交改动的唯一值,这个值是随机生成的。

Author:前一篇博文中讲到的全局配置或者本地目录配置里面的用户参数。

Date:提交更改的详细时间。

底下的就是提交时候-m写的改动描述,这个越详细越好,方便其他人阅读。

5、流转过程:

 二、详细使用

1、初始化当前目录为版本控制文件夹

#git init(如果误操作想撤回初始化,rm -rf .git,直接删除当前目录的.git文件夹即可)

2、git add /git commit(添加到待提交列表或提交到本地仓库)

#git commit -m '描述‘ 必须要有这个参数,写什么都行,不写不让提交。

3、文件每次更改都需要重新提交一次。

4、查看状态

#git status

当我们看到一个新的git的仓库的时候,第一步要做的是查看当前仓库的状态,下面这个图例是告诉我们,暂时没有需要提交或者待提交的更改或有没有被版本控制的文件。

5、查看日志

#git log(j:向上翻,k:向下翻。Ctrl+f下一页,Ctrl+b上有一页,q:退出)

6、查看某一条提交的详细信息

#git show commit后面的号

我们对redeme这个文件里面的内容做一次更改,提交后用git log查,我们能看到这次查看的基本信息。

然后只要commit号前面的4位或者6位就行(前提是没有重复的,基本没有重复的)

红色字体:前面有个减号,说明是我们删掉的内容,加号表示是我们新增的内容。

7、撤销(reset)

从左到右是走上面的命令,从右边到左边的话走下面的命令。

这里有两种撤销方法: 

1、从本地仓库撤销到待提交列表。

我们将已经提交到本地仓库的更改,撤销的待提交列表。

#git reset --soft HEAD~1(表示撤销最近的一次改动,并且放到待提交列表里面)

2、从本地仓库直接撤销到本地代码状态。

#git reset  HEAD~1

从上面的命令来看,相比加上--soft软撤销,硬撤销更利索一点。

注意:撤销命令尽量少用,团队在开发过程中你也不知道你的队友更改过什么东西。

8、撤销(checkout)

说明:

#git checkout -- 文件名

当我们更改了文件内容的时候,还未执行git add 命令的时候,如果想撤销编辑,就可以使用git checkout -- 文件名的命令。如果已经执行了git add命令,就只能执行git reset命令,细心的同学会发现其实下面截图有系统提示。

执行撤销后,新增的内容没有了。

9、删除

#git rm/commit

说明:使用git rm 删除文件,前提是你已经执行了git add和git commit命令,提交到了本地仓库里面,然后才能执行删除命令,如果你还未执行git add(添加到待提交列表),这样的话只是本地文件(还受版本控制约束,直接执行命令删除即可),如果已经执行了git add想撤回的话可以使用git reset命令(下面截图系统是有提示的),只有提交到本地仓库以后的文件,执行git rm才是有效的,一定要记得任何更改都必须提交。

删除提交以后,提示没有需要提交的改动。

如果我们用git show 命令的话,就能看到具体细节,告诉我们删除了该文件。

10、忽略文件

部分不想提交的内容(例如数据库密码或者一些无关的文件,相当于过滤)

#gitigonre

首先我们在和.git同级目录下建立一个.gitigonre文件(前面还有个点),然后我们建立一个database.yml文件

打开.gitigonre文件,输入*yml(过滤所有后缀是yml的文件)

但是.gitigonre文件是需要提交的,每次更改了.gitigore文件内容,也都需要提交。

11、分支

下图中每个点都是一次提交,从左往右第二个点开始往下分开了一个分支,到从左往右第六个点后又合并成一个起。下面这个线就是一个分支。

11.1 创建和切换

现在master和brother进度都是一样的。

切换到brother分支以后,更改redeme文件内容。

切换到master分支,查看redeme文件并没有任何更改。

git log也没有任何更改。

 11.2删除分支

11.3合并分支

准备合并前的环境

准备开始合并

首先先切换到要合并到的那个分支上,我这里是要把brother合并到master分支上,所以首先应该先切换到master上。

合并:

告诉我们redeme文件增加了一行,

细心的同学呢会发现合并的时候就连commit号都原封不动的合并过去了。

python爬虫之git的使用的更多相关文章

  1. python爬虫之git的使用(windows下pycharm使用)

    相信很多同学学会了git或者github以后都不知道怎么跟windows上的pycharm连在一起工作,那么下面我们开始介绍简单的安装和使用方法. 一.安装 1.首先你的有一个github的账户.注册 ...

  2. python爬虫之git的团队协作

    一.Git实践: commit,push,pull,status,add基本是最常用的几个命令. 1.首先我在github上创建了一个项目,然后我在本地的文件建立了一个普通的目录(git_data). ...

  3. python爬虫之git的使用(origin说明)

    1.首先我们回忆两个命令 #git remote add origin 远程仓库链接 #git push -u origin master 我们一起看看这个命令,git是git的一级命令,push就是 ...

  4. python爬虫之git的使用(coding.net的使用)

    1.注册coding.net账号,然后登陆. 2.创建项目 套路和github都一样. 1.1.我们在远程仓库上创建了一个仓库,这样的话,我们需要在本地随便建立一个文件普通文件夹,进去以后,执行git ...

  5. python爬虫之git的使用(github的使用)

    上面博文中我们简单的了解了一下基本的git操作,但是我们都是将代码放到了本地的仓库里面,但是如果我们是一个团队开发的话,肯定不会放到每个人的本地,必须得有个统一的地方存放代码,国外的大家都在使用git ...

  6. python爬虫之git的安装

      一.初始 1.发展历史 *最开始没有对代码的管理,导致很多东西混乱和丢失. *后来大家想了一个办法,用最简单最笨的方法,各种复制文件夹. *然后就出现了版本控制的工具. 1.单机版:RCS(198 ...

  7. 一个python爬虫小程序

    起因 深夜忽然想下载一点电子书来扩充一下kindle,就想起来python学得太浅,什么“装饰器”啊.“多线程”啊都没有学到. 想到廖雪峰大神的python教程很经典.很著名.就想找找有木有pdf版的 ...

  8. Python爬虫入门教程 2-100 妹子图网站爬取

    妹子图网站爬取---前言 从今天开始就要撸起袖子,直接写Python爬虫了,学习语言最好的办法就是有目的的进行,所以,接下来我将用10+篇的博客,写爬图片这一件事情.希望可以做好. 为了写好爬虫,我们 ...

  9. Python爬虫——用BeautifulSoup、python-docx爬取廖雪峰大大的教程为word文档

    版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 廖雪峰大大贡献的教程写的不错,写了个爬虫把教程保存为word文件,供大家方便下载学习:http://p ...

随机推荐

  1. 6.03-news_xpath2

    import re import requests # 安装支持 解析html和XML的解析库 lxml # pip install lxml from lxml import etree url = ...

  2. UVA1374-Power Calculus(迭代加深搜索)

    Problem UVA1374-Power Calculus Accept:323  Submit:2083 Time Limit: 3000 mSec  Problem Description  I ...

  3. IPS简单使用方法

    转载:http://blog.csdn.net/zhou1862324/article/details/17512191 IPS(incident packaging service)是11G的新特性 ...

  4. sqlalchemy和flask-sqlalchemy的几种分页方法

    sqlalchemy中使用query查询,而flask-sqlalchemy中使用basequery查询,他们是子类与父类的关系 假设 page_index=1,page_size=10:所有分页查询 ...

  5. 在Windows .NET平台下使用Memcached (Enyim使用)

    1. 启动并配置Memcached的服务端 1. 下载Memcached  http://download.csdn.net/download/ful1021/7969231 2. 解压到任意目录下, ...

  6. 重建UNDO表空间遭遇ORA-01548

    今天开发那边的一套数据库的undo表空间不知道被谁设置成了自动扩展,然后所谓的屋漏偏逢连夜雨的是, 开发人员今天跑了一个很大的事物,然后直接后果就是undo表空间不断被扩展,直到把文件系统写爆了.没办 ...

  7. 20175310 MyCP(课下作业,必做)

    一.作业要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内 ...

  8. python日志等级输出删选

    有时候我们会删选一下输出的信息 当做日志进行文件保存 但是我们程序中有可能有自己不想存到日志文件中的输出信息 我们要做一些的删选  然后进行保存 代码如下: #!/usr/bin/python # - ...

  9. c++中vector类的用法

    概括:向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container).跟任意其它类型容器一样,它能够存放各种类型的对象.可以简单的认为,向量是一个能够存放任意类型的动态 ...

  10. python相关资料链接

    后续的博客更新,会涉及到很多的python及python的框架相关的内容,这里将自己收藏的一些关于python相关资料的链接做一个整理,算是一个导航索引吧... PS:其中有些链接对应的技术团队文章, ...