Git 极简入门教程  http://rogerdudler.github.io/git-guide/index.zh.html

测试用 https://github.com/xxx/BrnShop.git

1.检出仓库,创建本地git 仓库

这里我已经知道了GitHub的代码仓库,可以省掉在本地创建新仓库(git init)命令, 直接实践了clone命令

直接clone Github上的仓库到本地 :

$ git clone https://github.com/xxx/BrnShop.git, 完成后在本地创建了项目目录BrnShop

2.然后进入到这个git仓库,图2, 这点很重要, 见下面的蓝色的master,说明我们现在处于git仓库的主干

3.提出更改,把我们的代码添加到Git暂存区,即怎样将将代码从工作目录添加到暂存区

git add <filename>  这是 git 基本工作流程的第一步

git add * 在自己的工作目录下执行

什么是暂存区? Git维护着本地的Git仓库的三个区域,第一个是我们自己的工作目录,它持有实际文件;第二个是 暂存区(Index),它像个缓存区域,临时保存着我们的改动;最后是 HEAD,它指向你最后一次提交的结果。

4.提交代码,即将改动提交到了 HEAD,但是还没将改动提交到远端仓库

git commit -m "代码提交信息" //执行完这条命令改动现在已经在本地仓库的 HEAD 中了

5.推送改动,即将这些改动提交到远端仓库

git push origin master  //可以把 master 换成想要推送的其它任何分支。

待理解  如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加: git remote add origin <server> 如此你就能够将你的改动推送到所添加的服务器上去了。

6.分支 之前的操作,不做任何设置, 默认都是在"master"主干上开发,如果需要将自己的开发与"主干"绝缘开了,需要理解git中分支概念

6.1 创建一个叫做“feature_x”的分支,并切换过去

核心命令: git checkout

6.2 切回主干: git checkout master

6.3 删除分支: git branch -d feature_x

6.4 将分支推送的远端仓库  git push origin <branch>

7.更新主干,即取回远程主机某个分支的更新,再与本地的指定分支合并

当在master时, 执行 git pull命令 见图

当我在gitHub上直接编辑READ.md后,执行上述命令,改动会下载到本地

参考

8.在工作分支下合并其他分支,即将其它分支的改动合并到到当前分支

在feature_x 下执行 $ git merge master

9. git diff 命令 如 $ git diff feature_x master

10. 查看提交log 和相关的打标签命令 为软件发布创建标签

11. 撤销
方法一:
用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到暂存区的改动以及新文件都不会受到影响。
git checkout -- <filename>
方法二: 放弃在本地的所有改动与提交,使本地仓库到服务器上获取最新的版本历史
git fetch origin
git reset --hard origin/master

Q&A

1.暂存区临时保存着我们的改动

2.怎样将将代码从工作目录添加到暂存区

3.fetch 命令是什么作用?

Git 极简入门教程学习笔记的更多相关文章

  1. Webpack新手入门教程(学习笔记)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 30.0px Helvetica; color: #000000 } ...

  2. TypeScript 入门教程学习笔记

    TypeScript 入门教程学习笔记 1. 数据类型定义 类型 实例 说明 Number let num: number = 1; 基本类型 String let myName: string = ...

  3. Nginx 极简入门教程!

    上篇文章和大家聊了 Spring Session 实现 Session 共享的问题,有的小伙伴看了后表示对 Nginx 还是很懵,因此有了这篇文章,算是一个 Nginx 扫盲入门吧! 基本介绍 Ngi ...

  4. ABP 极简入门教程(一)

    本示例不讲概念,只讲怎么用,概念性的内容没有比官方文档更清楚的了,我也正在学习,可能理解的地方有不对的欢迎一起交流,但需要您了解以下内容才能看明白 asp.net core Entity Framew ...

  5. Nginx 极简入门教程!(转)

    基本介绍 Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务. Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.r ...

  6. ABP 极简入门教程(三 权限)

    此处演示为MVC项目,同样权限定义需要到Application中才能在获取API时进行权限验证 一.打开Sample.Core\Authorization\PermissionNames.cs增加授权 ...

  7. ABP 极简入门教程(二 MVC方式显示数据)

    增加显示菜单 Sample.Web.MVC项目中找到startup目录打开SampleNavigationProvider.cs,根据现有内容添加以下内容 .AddItem( new MenuItem ...

  8. Git、Github、Gitkraken 学习笔记

    <Git.Github.Gitkraken 学习笔记> 一.写在前面 1.参考资料 本文参考 <Pro Git> 一书. 在官网有免费在线版可供阅读:https://git-s ...

  9. 极简python教程02:基础变量,删繁就简

    python极简教程已经开赛,如果错过说明可以回翻: 极简python教程:赛前说明 借这个机会,我再讲讲我的教程和其他网上的教程的区别: 1 我分享的内容,是我在工作中会高频使用的语法,是精华内容 ...

随机推荐

  1. postgresql 相关

    http://www.yiibai.com/html/postgresql/2013/080998.html 1.安装PG的client以及函数库: yum install postgresql    ...

  2. IO操作中的建议

    程序输出信息使用PrintStream(或者PrintWriter),程序输入信息使用Scaner

  3. 中文分词工具jieba中的词性类型

    jieba为自然语言语言中常用工具包,jieba具有对分词的词性进行标注的功能,词性类别如下: Ag 形语素 形容词性语素.形容词代码为 a,语素代码g前面置以A. a 形容词 取英语形容词 adje ...

  4. JSP的原理、JSP的执行过程

    Jsp的本质是servlet, 通过response的printWriter返回,response的getOutputStream只能调用一次,返回流就不能返回页面刷新. JSP起源 在很多动态网页中 ...

  5. SpringMVC单元测试-MockMvc

    一 简介 MockMvc实现对Http请求的模拟,可以方便对Controller进行测试,使得测试速度快.不依赖网络环境,而且提供验证的工具,使得请求的验证统一而且很方便.   二 常见使用方式 1  ...

  6. zabbix自动发现监控mysql

    一. 数据库给只读权限 1.1 grant usage on *.* to 'zabbix'@'127.0.0.1' identified by 'zabbix'; flush privileges; ...

  7. ES5、6、7浅析

    ECMA Script 它是一种由ECMA组织(前身为欧洲计算机制造商协会)制定和发布的脚本语言规范 而我们学的JavaScript是ECMA的实现, 但术语ECMAScript和JavaScript ...

  8. MySQL 存储过程 -流程控制的使用

    #五.流程控制的使用 #1.IF 使用 create PROCEDURE iftest1() BEGIN DECLARE a int DEFAULT 10; -- IF (a>1 &&a ...

  9. jenkins持续集成之Global Tool Configuration的配置

    Global Tool Configuration的配置过程: 1.点击系统管理2.点击 Global Tool Configuration3.必须配置: jdk git ant maven 1.点击 ...

  10. Linux查询系统信息命令

    Linux查看系统信息是比较基础的知识,所以这个应该都需要掌握,命令和解释如下: #uname -a           查看操作系统.内核.CPU信息 #head -n 1 /etc/issue   ...