远程克隆:

在github新建一个仓库,起名为gitskills

勾选此项,会自动创建一个readme.md文件,然后通过命令

git clone git@github.com:Your.name/gitskills.git

克隆到本地仓库中

比如,我在gitskills 下添加了一个文件,那么,想同步推送到github上,就需先进去gitskills文件夹

cd gitskills

然后再执行 git add       git commit             git push 等草做推送到远程仓库。

_____________________________________________________________

分支管理:

创建分支 dev ,然后切换到 dev 分支,

git checkout -b dev

加上 -b 参数是指创建并切换,

实际上,这相当于两条命令

git branch dev    ------- 创建分支

git checkout dev     --------- 切换分支

git branch   ------ 显示所有分支

当前分支前会有 * 号

当前分支的操作不会影响其它分支,比如,我在dev分支下,对readme.txt 文件修改了内容,并且推送到版本库中,然后切换回master分支,查看readme.txt内容,发现,并没有改动.

git checkout master    -------切换分支到master

将dev分支合并到master分支

git marge dev          ----------- 将dev分支合并到当前分支

在dev修改的内容会合并到master上,在master分支上查看内容,发现,master分支下的readme.txt文件内容增加了再dev分支下的修改.

使用完dev 分支,我们就可以将之删除掉,

git branch -d dev

此时,再查看

git branch ,分支就只有master 了.

解决冲突:

我们创建一个分支 feature1,

git checkout -b feature1

然后在当前分支下修改readme.txt

git add 提交到暂存库   git commit 提交到版本库

接下来,切换回master分支,修改readme.txt 内容为

git add 提交到暂存库   git commit 提交到版本库

然后合并feature1到master

git merge feature1

果然冲突了!Git告诉我们,readme.txt文件存在冲突,必须手动解决冲突后再提交。git status也可以告诉我们冲突的文件:

查看 master 分支下readme.txt

HEAD 即 master 分支下为:

feature1 分支下为:

此时,需要我们手动解决冲突,修改为:

git add 提交到暂存库 git commit 提交到版本库

查看文件:

用带参数的git log也可以看到分支的合并情况:

最后,删除feature1分支:

$ git branch -d feature1
Deleted branch feature1 (was 75a857c).
git log --graph命令可以看到分支合并图。

Git 学习第三天(一)的更多相关文章

  1. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  2. Git学习(三)——暂存区、远程仓库、增删改管理

    一.工作区和暂存区 工作区(Working Directory) 就是在你的电脑里能看到的目录 版本库(Repository) 工作区中的一个隐藏目录.git,这个不算工作区,而是Git版本库.Git ...

  3. Git学习笔记(三)

    Git提交相关内容 在Git提交时,会保存一个提交对象,该对象包括一个指向暂存区内容快照的指针,包括本次提交作者等相关附属信息,包括零个或多个指向该提交对象的父对象指针:首次提交时是没有祖先,普通提交 ...

  4. Git学习教程三之分支管理

    实战流程: 1:代码库克隆一份至本地 2:新分支操作 2.1  在需要的文件中创建并指向新的分支方便写代码  git checkout -b <name>                2 ...

  5. Git 学习第三天(二)

    默认情况下, Git合并是采用"fast forward"模式,但这种模式下,如果删除分支,会丢掉分支信息 禁用 fast forward 模式: git merge --no-f ...

  6. git学习(三):版本控制

    查看每次修改日志 git log 会显示每次修改的日期和相应提交的commit 版本控制 git reset --hard <版本id> 这里的id可以是HEAD^(上一个) HEAD^^ ...

  7. git学习笔记三

    1.每个分支的历史版本维护信息位置是.git/logs/refs/heads/master,这个位置的信息是文本文件,不是引用. harvey@harvey-Virtual-Machine:~/dem ...

  8. Git学习笔记三--管理修改、撤销修改、删除文件

    1.管理修改 什么是修改?比如你新增了一行,这就是一个修改,删除了一行,也是一个修改,更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改,甚至创建一个新文件,也算一个修改. 为什么说Git ...

  9. Git学习总结三(工作区和暂存区、撤销修改)

    工作区和暂存区 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git, ...

随机推荐

  1. Python Numpy 矩阵级基本操作(1)

    NumPy的操作介绍 import numpy as np #导入numpy包,简写为np print "Generate 1*10 matrix" a=np.arange(1,1 ...

  2. Django框架(十九)—— drf:序列化组件(serializer)

    目录 序列化组件 一.利用for循环来实现序列化(繁琐) 二.利用Django提供的序列化组件(不可控需要的字段) 三.利用drf提供的序列化组件 1.基于Serializer类实现序列化--基本语法 ...

  3. Django框架(十四)—— Django分页组件

    目录 Django分页组件 一.分页器 二.分页器的使用 三.案例 1.模板层 2.视图层 Django分页组件 一.分页器 数据量大的话,可以分页获取,查看 例如:图书管理中,如果有成千上万本书,要 ...

  4. SpringCloud-技术专区-Hystrix-使用指南

    Maven依赖配置 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId ...

  5. Debug模式的三种配置方法

    使用`app.config.from_object`的方式加载配置文件: 1. 导入`import config`.2. 使用`app.config.from_object(config)`. ### ...

  6. Tomcat发布项目的几种方式

    如何在浏览器访问一个xml文件 拷贝这个文件到webapps/ROOT底下, 在浏览器里面访问 直接把tomcat/webapps/ROOT目录下 浏览器访问http://localhost:8080 ...

  7. 面试题: nodejs 的事件轮询机制

    setTimeout(function(){ console.log('setTimeout()执行了') },0) setImmediate(function(){ console.log('set ...

  8. ArrayList的几种初始化方法

    1.使用Arrays.asList方法 ArrayList<Object> obj = new ArrayList<Object>(Arrays.asList(Object o ...

  9. PyCharm Change Font Size

    file->settings->colors&fonts-> save as (save the current scheme as your own)-> font- ...

  10. Map集合类(一.hashMap源码解析jdk1.8)

    java集合笔记一 java集合笔记二 java集合笔记三 jdk 8 之前,其内部是由数组+链表来实现的,而 jdk 8 对于链表长度超过 8 的链表将转储为红黑树 1.属性 //节点数组,第一次使 ...