git及github使用
1.git安装
widows: 可以去git官网下载安装
ubantu : 使用命令 sudo apt-get install git 进行安装
2.git启动
widows: 首先去到需要建立git库的文件夹,然后点击鼠标右键,选择Git Bash Here, 便可以启动命令框
ubantu: 文件目录切换到需要建立gi仓库的目录,输入命令 git, 便可以启动命令框
3.git命令
3-1.创建版本库
git init
(执行完上面的命令后,文件夹内会对一个.git的文件夹)
3-2. 将更新后的工作区文件(文件夹)添加到git暂存区
git add 文件名(添加工作区全部内容可以用 .)
git rm 文件名 (推送删除的文件)
3-3. 将暂存区的内容提交到版本库
git commit -m ”提交时说明性文字"
3-4. 查看提交的版本记录
git log
如果版本太多 可以用 git log --pretty=oneline
3-5. 版本回退
git reset --hard HEAD^(一个^表示回退一级,需要回退多级写多个^)
或者 git reset --hard HEAD~1(1表示回退一级, 需要回退多级就写回退的级数)
或者 git reset --hard 版本号 (版本号可以只写前边几位)
3-6. 查看历史操作记录(查看版本号)
git reflog
3-7. 查看状态
git status
3-8. 撤销工作区修改(包括删除)
git checkout --需要撤销的文件名
3-9. 撤销已提交到暂存区的修改(包括删除)
a.先将暂存区的内容回退到工作区
git reset HEAD --要撤销的文件名
b. 从工作区撤销修改
git checkout --要撤销的文件名
3-10. 对比文件不同
a.工作区与版本库对比
git diff HEAD --工作区文件名
b. 版本库之间对比
git diff HEAD HEAD^ --要对比的文件名
3-11. 查看分支
git branch
3-12. 创建分支
git branch 要创建的分支名
3-13. 切换分支
git checkout 分支名
3-14. 创建并切换分支
git checkout -b 分支名
3-15. 删除分支
git branch -d 分支名
3-16. 分支合并
a.快速合并
git merge 分支名
这种方法是将两分支的指针指到一起,没有新提交记录

b.合并冲突
产生原因:两个分支修改同一个文件
解决冲突:手动合并文件中不同的内容 然后再进行一次合并(合并时会弹出一个写提交时的说明文字的编辑框,写完内容后用ctrl+X退出)
c. 禁止快速合并
git merge --no-ff -m "提交说明文字" 分支名
这种方法会先将两分支指针指到一起,并会进行一次新的提交

3-17. bug分支
解决bug时新建一个分支,合并时禁止快速合并,解决完bug后删掉bug分支
3-18. 保存现场
应用场景:当前修改的内容还没有提交 需要去处理另外一个紧急任务时 保存当前的工作状态
git stash
3-19. 查看保存现场
git stash list
3-20. 恢复现场
git stash pop
4.github使用
4-1. 创建ssh密钥
ssh-keygen -t rsa -C "邮箱"
4-2. 把公共密钥添加到github
点击github头像,然后选择settings, 再选择SSH那一项便可以添加。
4-3. 把github仓库克隆到本地
git clone 要克隆的仓库SSH链接
4-4. 拉取代码到本地
git pull origin 分支名
4-5. 推送版本库中的内容到github
git push origin 分支名
如果分支不存在会新建分支
4-6. 本地分支跟踪github分支
git branch --set-upstream-to=origin/要跟踪的远程分支名 本地分支名
跟踪之后 可以用git status 检查本地分支与远程分支的内容是否一致
跟踪之后 推送代码时可以用 git push, 可以不写远程分支名称
git及github使用的更多相关文章
- 简单使用Git和Github来管理自己的代码和读书笔记
原文链接:http://my.oschina.net/bxxfighting/blog/378196 先注册github.com的账号官方网站: https://github.com/ 注册界面, ...
- git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议
1.安装及配置默认路径 Windows中从GitHub上面:https://git-for-windows.github.io/ 下载安装好git后(双击,改一下需要的安装路径,一路确定就好了),安装 ...
- git与github安装、配置、pull、push
操作系统是Ubuntu 16.04 LTS 64bit 1 安装git (1)安装 sudo apt-get install git-core (2)一些全局变量的初始化 在本地建立一个文件夹,然后做 ...
- 转:sublime上使用git连接github
"工欲善其事,必先利其器." 这是古人的教诲,也是一个高效率的工程师需要遵循的法则之一.从大学开始写Java使用了JBuilder,Eclipse,后来写PHP用了Zend,写Ja ...
- git与github使用
Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的关联 六. ...
- linux下git以及github的连接与使用
简单理解 Git 的思想和基本的工作原理,能够更好的进一步和使用Git.在开始学习Git 的时候,最好不要把Git的各种概念和其他的版本控制系统诸如 Subversion 等相比,否则容易混淆每个操作 ...
- Git和Github简单教程
原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...
- Git和Github简单教程(转)
这篇文章只挑一部分命令来讲,差不多够用就行的程度.如果需要其他命令,到时候再去其他地方了解就行了先在Github上写好再搬过来的:本文Github链接 目录: 零.Git是什么 一.Git的主要功能: ...
- WebStorm和sublime上使用git连接github(转)
WebStorm使用git连接github的方法: 用webstorm上传代码时,首先要先下载git,网址一搜就可以搜到,安装git,并且把ssh配置到github上.然后开始配置webstorm,打 ...
- git和github使用方式
git 和github github是远程管理代码的服务器的名称 git代码管理系统 (git既然是一个系统,所以说git也有一些命令) git操作过程 首先在本地建立一个仓库,用来把代码提交到git ...
随机推荐
- 【翻译】Flink Table Api & SQL — Hive —— 在 scala shell 中使用 Hive 连接器
本文翻译自官网:Use Hive connector in scala shell https://ci.apache.org/projects/flink/flink-docs-release-1 ...
- GPRS 智能门禁控制器
本模块居于GPRS 2G网络,信号覆盖广,而且好. 主要用于微信门禁等,提供用户服务端搭建及相关接口. 您可以向门禁发送开门信号,并提醒开门成功的信号反馈. 同时支持发送开门ID号,并反馈成功ID号
- Prometheus监控实战day1-监控简介
福利 Prometheus监控实战PDF电子书下载 链接:https://pan.baidu.com/s/1QH4Kvha5g70OhYQdp4YsfQ 提取码:oou5 若你喜欢该资料,请购买该资料 ...
- javascript Round Function
var rounded = Math.round( number * 10 ) / 10; // round to one digit var rounded = Math.round( number ...
- RSA非对称式加解密笔记
1.服务器生成[公钥]和[私钥],成对生成: 2.客户端生成证书信息,使用[公钥]进行加密,前提是有公钥,并生成证书信息: 3.客户端发送自身的计算机名.MAC.用户名.证书内容给服务器: 4.服务器 ...
- 后端&前端零碎知识点和注意问题
后端 1. Spring自带的MD5加密工具类 import org.springframework.util.DigestUtils; String md5Password = DigestUtil ...
- [转帖]Docker公司被收购,开源界尴尬不?
Docker公司被收购,开源界尴尬不? https://news.51cto.com/art/201911/606189.htm Docker公司被谁收了? Docker公司被谁收了?Mirantis ...
- js中常用的获得日期对象的方法
// 默认是当前时区的日期和时间 var date = new Date(); // 获取特定日期和时间的日期对象,需要传递毫秒数,不过可以传递规范日期格式字符串来代替 // 一些常见的日期格式 // ...
- Django框架之第六篇(模型层)--单表查询和必知必会13条、单表查询之双下划线、Django ORM常用字段和参数、关系字段
单表查询 补充一个知识点:在models.py建表是 create_time = models.DateField() 关键字参数: 1.auto_now:每次操作数据,都会自动刷新当前操作的时间 2 ...
- C语言合并果子-贪心算法
/*有几堆水果.每次你把两堆东西移到一起,形成更大的一堆.每个动作消耗的能量是两堆水果的总重量.如何把所有的水果堆在一起,消耗最少的能量?*/ 以上是题目,该题首先要读懂题目,每次移到一起以后都要将数 ...