一、简单认识:

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. TortoiseHg 学习笔记

    0.前言     TortoiseHg是分布式的源代码管理工具Mercurial的GUIclient. mercurial 作为3大主流的分布式源代码管理工具.已经被广泛的使用.比如 googleco ...

  2. [matlab] 8.蚁群算法解决TSP问题

    城市坐标数据下载  密码:07d5 求遍历这52座城市后最后回到最初城市的最短距离 %% 第9章 蚁群算法及MATLAB实现——TSP问题 % 程序9-1 %% 数据准备 % 清空环境变量 clear ...

  3. Python入门学习:1.变量和简单的数据类型

    python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用   变量,顾名思义是一个可变的量, ...

  4. 深入理解session机制

    原文链接https://blog.csdn.net/xihuangwutong/article/details/9819033 1. session概念 2. http协议与状态保持 3. 理解coo ...

  5. 3-jsp 内置对象、转发与重定向

    1.request:请求常用api: getParameter("name"):获取页面表单单个元素的值 getParameterValues("name"): ...

  6. docker 10 docker的镜像原理

    镜像是什么? 镜像是一个轻量级,可执行的软件包,用来打包运行环境和基于运行环境开发的软件包,它包含某个软件运行环境的所有内容.包括代码,运行时的库,配置文件和环境变量 UnionFs(联合文件系统) ...

  7. node.js之express框架

    之前学习过node.js接触过express框架,最近为了编写一个mock server正好用到了express.下面正好就跟大家介绍一下关于express.今天的内容主要围绕这么几个方面? expr ...

  8. Luogu P3378 【模板】堆

    ((^ 0.0 ^)    )~ 堆是一个完全二叉树,对于小根堆,所有父节点<=子节点,下标就和线段树是一样的 在STL里就是优先队列 只有堆顶元素可以操作(询问或弹出). 加入新元素时x,he ...

  9. 《了不起的 nodejs》中 TwitterWeb 案例 bug 解决

    了不起的nodejs算是一本不错的入门书,不过书中个别案例存在bug,按照书中源码无法做出和书中相同效果,原本兴奋的心情掺杂着些许失落. 现在我们看一下第七章HTTP,一个 Twitter Web 客 ...

  10. 《React Native 精解与实战》书籍连载「React Native 中的生命周期」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...