使用github之前的技能准备
- Git的导入
- 介绍
Git属于分散型版本管理系统,是为版本管理而设计的软件。版本管理就是管理更新的历史记录。它为我们提供了一些在软件开发过程中必不可少的功能,例如记录一款软件添加或更改源代码的过程,回滚到特定阶段,恢复我删除的文件等。
- 安装
新版本的Mac都预装了Git,而各版本的Linux中也都以软件包的形式提供给用户了,基本都可以直接使用。
Windows 环境中,msysGit的安装方法也是比较傻瓜式的,唯一需要注意的是换行符的处理,因为Github上公开的代码大部分都是以Mac或Linux中的 LF(line feed)换行。而Windows中是以CRLF换行,所以在非对应的编辑器中将不能正常显示。
所以在相应步骤中选择 "Checkout Windows-style,commit Unix-style line endings" 选项。
- 初始设置
设置名字(请使用英文)和邮箱
git config –global user.name "Firstname Lastname"
git config –global user.email "your email addr"
提高命令输出的可读性(命令高亮显示)
git config –global color.ui auto
- Git的基本操作
- git init 初始化仓库
- 要使用git进行版本管理,必须先初始化仓库。Git是使用git init命令进行初始化的。要实际建立一个目录并初始化仓库:
mkdir git-tutorial
cd git-tutorial
git init
如果初始化成功,在该目录下就会生成.git目录。这个.git目录里存储着管理当前目录内容所需的仓库数据。
在git中,我们将这个目录的内容称为"附属于该仓库的工作树"。文件的编辑等操作在工作树中进行,然后记录在仓库中。
- git status 查看仓库的状态
git status命令用于显示git仓库的状态,这是一个常用的命令,请牢记。
工作树和仓库在被操作的过程中,状态会不断发生变化。在git操作过程中常常用git status查看状态,了解当前的项目情况,包括所处的分支,代码提交的情况等
- git add 向暂存区中添加文件
如果只是用git仓库的工作树创建了文件,那么该文件并不会被记入git仓库的版本管理对象当中。因此当我们使用git status查看状态时候,新添加的README.md文件会被当做Untracked files。
要想让文件成为Git仓库的管理对象,就需要用git add命令将其加入暂存区(stage或者index)中。暂存区是提交之前的一个临时区域。
git add README.md
git status
此时,README.md显示为 Changes to be commited
- git commit 保存仓库的历史记录
git commit命令可以将当前暂存区中的文件实际保存到仓库的历史记录中。通过这些记录我们就可以在工作树中复原文件。
$记述一行提交信息
git commit –m "first commit"
$记述详细提交信息
直接执行git commit,然后编辑器会启动,进入详细信息编辑页面:
这种记述详细提交信息的方式格式如下:
第一行:简述提交更改的内容
第二行:空行
第三行:记述更改的原因和详细内容
只 要通过上面的格式输入,今后便可以通过确认日志的命令或工具看到这些记录。#注释的内容不必删除。编辑状态的操作基本上和linux中vim编辑器的操作 一样,比如添加内容请先输入i 添加完成保存,请先esc(按键),然后输入:wq 也就是保存退出的命令。如果想放弃本次提交,请输入:q!(直接退出不保存的命令,注意感叹号,否则退出不成功)
- git log 查看提交日志
git log可以查看以往仓库中提交的日志,而且可以查看什么人在什么时候进行了提交或合并,以及操作前后有怎样的差别
使用github之前的技能准备的更多相关文章
- WEB前端学习资源清单
常用学习资源 JS参考与基础学习系列 [MDN]JS标准参考 es6教程 JS标准参考教程 编程类中文书籍索引 深入理解JS系列 前端开发仓库 <JavaScript 闯关记> JavaS ...
- [转] WEB前端学习资源清单
常用学习资源 JS参考与基础学习系列 [MDN]JS标准参考 es6教程 JS标准参考教程 编程类中文书籍索引 深入理解JS系列 前端开发仓库 <JavaScript 闯关记> JavaS ...
- Scrum会议博客以及测试报告(β阶段)
3组Alpha冲刺阶段博客目录 一.Scrum Meeting1. [第十周会议记录](链接地址:https://www.cnblogs.com/Cherrison-Time/articles/120 ...
- 搜刮一些开源项目的APP
iOS完整App资源收集 <iOS完整app资源收集> <GitHub 上有哪些完整的 iOS-App 源码值得参考?> <GitHub 上有哪些完整的 iOS-App ...
- 那些在GitHub能提高你的编程技能的项目
1.免费的编程书籍 免费的开发手册 167K Repo:github.com/EbookFoundation/free-programming.. 2. 很棒的话题 包含了各种有趣的话题 148k R ...
- 大数据攻城狮之进阶技能-使用Git上传自己的项目至GitHub仓库
在开始讲解之前我们默认已经存在仓库和安装Git,没有下载的可以去https://git-scm.com/ Git官方网站下载或者是私聊博主. 下面我们说一说Git的使用,比如说如何生成密钥,连接远程仓 ...
- 大数据攻城狮之进阶技能-Github的使用
引用百度百科中的介绍: github GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线 ...
- CI Weekly #8 | CI/CD 技能进阶路线
在使用 flow.ci 进行持续集成的过程中,也许你会遇到一些小麻烦.最近我们整理了一些常见问题在 flow.ci 文档之 FAQ,希望对你有用.如果你遇到其他问题,也可以通过「在线消息」或去 Git ...
- .NET WEB程序员需要掌握的技能
本来这个是我给我们公司入职的新人做一个参考,由于 @张善友 老师在他的微信号转了我的这篇文章<<.Net WEB 程序员需要掌握的技能>>,很多人觉得比较有用,说是看了后知道一 ...
随机推荐
- AD域登录验证
AD域登录验证 作者:Grey 原文地址:http://www.cnblogs.com/greyzeng/p/5799699.html 需求 系统在登录的时候,需要根据用户名和密码验证连接域服务器进行 ...
- PetaPoco利用ODP.NET Managed Driver连接Oracle
大概几年之前用PetaPoco做过一个Oracle的项目,开发的时候还需要安装oracle的client,非常麻烦.调试好环境后,一直到项目结束都不敢重装系统.最近又有一个需求需要读取oracle,可 ...
- 设计模式(二)简单工厂模式(Simple Factory Pattern)
一.引言 这个系列也是自己对设计模式的一些学习笔记,希望对一些初学设计模式的人有所帮助的,在上一个专题中介绍了单例模式,在这个专题中继续为大家介绍一个比较容易理解的模式——简单工厂模式. 二.简单工厂 ...
- 如何使用Dubbo服务和集成Spring
Dubbo是什么? Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点. Dubbo是一个 ...
- 采花 bzoj 2743
采花(1s 128MB)flower [题目描述] 萧芸斓是Z国的公主,平时的一大爱好是采花. 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花.花园足够大,容纳了n朵花,花有c种颜色(用整 ...
- python tornado websocket 实时日志展示
一.主题:实时展示服务器端动态生成的日志文件 二.流程: 1. 客户端浏览器与服务器建立websocket 链接,服务器挂起保存链接实例,等待新内容触发返回动作 2. 日志服务器脚本循环去发现新内容, ...
- PHP函数之自定义函数
像数学中的函数一样,y=f(x)是函数基本的表达形式,x可看做是参数,y可看做是返回值,即函数定义就是一个被命名的.独立的代码段,它执行特定的任务,并可能给调用它的程序返回一个值. 自定义函数 函数的 ...
- Lind.DDD.Repositories.Mongo层介绍
回到目录 之前已经发生了 大叔之前讲过被仓储化了的Mongodb,而在大叔开发了Lind.DDD之后,决定把这个东西再搬到本框架的仓储层来,这也是大势所趋的,毕竟mongodb是最像关系数据库的NoS ...
- 实用SQL语句大全
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- JavaScript基本语法(二)
上篇博文写到JavaScript的数据类型.JavaScript包括了字符串(String).数字(Number).布尔(Boolean).数组(Array).对象(Object).空(Null).未 ...