git版本控制  廖雪峰老师的git教程

git是linus 1991年创建了开源的linux、、、已成为最大的服务器系统软件

集中式的版本控制器:CVS、SVN、ClearCase是IBM的收费软件特点是安装比windows还大,上传巨慢、VSS是微软的集中式自己都不用了  ,

分布式的版本控制:GIt是在BitKeeper促使下诞生的,,,,git是做快最简单最流行的

SVN 版本控制可以使用 Cornerstore

Git:  .SSH是什么 SSH是一种网络协议,用于计算机之间的加密登录

Git在Mac下的使用

Git在Mac下的使用

 基础应用:

1、创建Git
$cd /创建目录
$ git init
Ok,可以往里边添加文件信息了,⚠️:文本用最好用UTF-8 万国码,图片只会显示变化的字节大小、微软下的Office 是二进制格式的,无法跟踪变化,不要使用微软下的记事本 因为每个文件开始都默认添加了0xefbbbf(十六进制)的字符,会有乱码建议你下载Notepad++代替记事本 记得格式改为UTF-8
2、每次添加的文件 以及改动的文件都要添加到 暂存区中: $git add <file.type>
3、提交可以都修改完了提交一次 $ git commit -m '修改备注'
4、获取log 日志 : $ git log
co5、获取详细的log 日志: $ git reflog
6、回到某个版本,先进行5,获得log的编号:$ git reset --hard <在5确认好的 id> 前提是没有上川岛远程库
7、撤销上一步操作 未放到暂存区的修改-》暂存区中的修改 以上两个一次选择一个撤销: $ git checkout -- <file.type>
8、获取当前的状态值: $ git status
9、删除文件 : $ rm <file.type>

远程仓库 .SSH是什么 SSH是一种网络协议,用于计算机之间的加密登录

1、推到远程仓库 ,需要在本地仓库运行命令,关联仓库 $ git remote add origin git@github.com:账户名称/learngit.git

2、第一次推上去: $ git push    就可以了,$ git push -u origin master 后边的追加可以将本地的分支和远程的分支进行绑定方便以后的操作
此后只要本地有了变化,只需要 $ git push origin master 就可以了 3、远程仓库克隆项目 $ git clone git@github.com:....xinxi 如果地址是 https://github.com/michaelliao/gitskills.git 可以 $ git://使用ssh 也可以使用https协议 ⚠️:https 协议速度会下降,每次上传都需要输入命令,但是在某些只开放http端喽的公司内部就无法使用ssh,只能用https
 

查看远程仓库信息:$ git remote    \详细信息 $ git remote -v

把分支push到远程仓库 : $ git push origin master

分支管理

1、查看分支:git branch

2、创建分支:git branch <name>

3、切换分支:git checkout <name>

4、创建+切换分支:git checkout -b <name>

5、合并某分支到当前分支:git merge <name>

6、删除分支:git branch -d <name>

7、强制删除分支 git branch -D <name>

---------一般合并 分支会在 fast forward 模式下,合并后之前的分支记录全部没有了,这个时候想保存记录 就可以禁止掉 fast forward-----

8、添加合并记录: $ git merge --no-ff -m '记录' <name>

9、分支策略
在实际开发中,我们应该按照几个基本原则进行分支管理:

首先,master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;

那在哪干活呢?干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到master上,在master分支发布1.0版本;

你和你的小伙伴们每个人都在dev分支上干活,每个人都有自己的分支,时不时地往dev分支上合并就可以了。

所以,团队合作的分支看起来就像这样:

分支管理

Bug 分支

1、出现了问题可以创建分支解决,在合并删除分支;目前的情况是在分支dev正在开发内容,可以临时stash一下(可以多次的stash);

$ git stash     到master分支出issue-001 解决合并 删除分支issue-001 ,回到dev

$ git stash list 查看收藏列表

$ git stash pop  进行回到原来的现场并且删除收藏  进行开发

常用git stash命令:

(1)git stash save "save message"  : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。

(2)git stash list  :查看stash了哪些存储

(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}

(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show  stash@{$num}  -p ,比如第二个:git stash show  stash@{1}  -p

(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}

(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

(7)git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储

(8)git stash clear :删除所有缓存的stash

Tag 标签

1、添加标签:$ git tag v1.0

2、获取标签: $ git tag

3、查看标签信息: $ git show v0.9

4、创建带有说明的标签,用-a指定标签名,-m指定说明文字:$ git tag -a v0.1 -m "version 0.1 released" 1094adb

5、删除标签;$ git tag -d v0.1

6、命令git push origin <tagname>可以推送一个本地标签;

7、命令git push origin --tags可以推送全部未推送过的本地标签;

8、命令git tag -d <tagname>可以删除一个本地标签;

9、命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

代码管理git 工具的话可以使用GitHub桌面端管理git、码云上的代码的更多相关文章

  1. 首次使用Git将码云上的代码Clone至本地

    使用Git将码云上的代码Clone至本地 1. 安装Git https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-G ...

  2. 使用Git将码云上的代码Clone至本地

    1. 安装Git https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git Git的网站上有详细的分各种系统的安 ...

  3. git向码云上传代码总结

    1.下载git windows下载地址:https://git-for-windows.github.io/ 2.安装git 一路确定 3.配置git 如果你要使用ssh上传代码,你需要本地生成ssh ...

  4. 关于在linux下安装git,以及在idea上将项目部署到码云上

    GIT 基于对linux感兴趣,并且也考虑到以后从事开发后也会用到linux,着实在闲余之际学学linux.最近在用VM虚拟机环境下学做一个项目,在git上卡了一点时间,但同时也收获  了不少,下面写 ...

  5. git的使用学习(七)githup和码云的使用

    1.使用GitHub 我们一直用GitHub作为免费的远程仓库,如果是个人的开源项目,放到GitHub上是完全没有问题的.其实GitHub还是一个开源协作社区,通过GitHub,既可以让别人参与你的开 ...

  6. 【学习总结】Git学习-参考廖雪峰老师教程九-使用码云

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  7. 使用Hexo搭建个人博客并部署到GitHub或码云上全过程

    一.前言 如上图所示:GitHub有Github Pages,而码云也有码云 Pages 1.Github Pages或Gitee Pages是什么呢? Github Pages或者Gitee Pag ...

  8. Git 把码云上被fork项目源码merge到fork出来的分支项目

    Git 把码云上被fork项目源码merge到fork出来的分支项目 By:授客 QQ:1033553122 需求描述 被fork的项目有更新代码,希望把更新的代码merge到fork分支项目 解决方 ...

  9. 把本地git仓库中的项目引入到码云上

    一.安装git软件和TortoiseGit客户端(git需配置环境变量,但安装时已经配置好,无需考虑) 二.生成公钥和私钥(建立与码云的连接) 三.在码云上新建项目(建议在组织的基础上)   四.在码 ...

随机推荐

  1. vscode local attach 和 remote debug

    VSCode是MS推出的一款免费的开源并跨平台的轻量级代码编辑器,内置Git和Debug等常用功能,强大的插件扩展功能以及简单的配置几乎可以打造成任意编程语言的IDE.本文简单聊一下其本地attach ...

  2. 为Qt视图中的文字添加彩虹渐变效果

    将view中的文本内容用自定义的颜色显示是一种十分常见的需求.今天我们稍微改变些"花样". 本文索引 需求定义 需求分析 代码实现 思考题 需求定义 我们的需求很简单,现在有一些在 ...

  3. 零基础学Python--------第9章 异常处理及程序调试

    第9章 异常处理及程序调试 9.1 异常概述 在程序运行过程中,经常会遇到各种各样的错误,这些错误统称为“异常”.这些异常有的是由于开发者将关键字敲错导致的,这类错误多数产生的是SyntaxError ...

  4. SD 笔记01

    sap组织结构:代表一个企业的组织视图的结构.根据业务处理,可以设置自己工时的结构.形成一个支持所有业务活动的框架. 集团公司代码销售区域 :销售组织.销售渠道.产品组:工厂库存地点装运地点 集团:c ...

  5. 《JavaScript高级程序设计》笔记:使用Canvas绘图(15)

    基本用法 要使用<canvas>元素,必须先设置其width和height属性,指定可以绘图的区域大小.出现在开始和结束标签中的内容是后备信息,如果浏览器不支持<canvas> ...

  6. PHP的简单跳转提示的实现

    在PHP开发中,尤其是MVC框架或者项目中,会碰到很多跳转情况,比如:登录成功或失败后的跳转等等. 以下以MVC框架开发中为基础,示例讲解: 在基础控制器类中:Conrtoller.class.php ...

  7. wordpress主题

    1.创建wordpress主题:在themes文件下建立新主题black文件夹 2.在black文件夹中放入index.php和style.css文件,其中index对style.css文件的引用 & ...

  8. Python 基于pykafka简单实现KAFKA消费者

    基于pykafka简单实现KAFKA消费者   By: 授客 QQ:1033553122         1.测试环境 python 3.4 zookeeper-3.4.13.tar.gz 下载地址1 ...

  9. WPF:Webbrowser 捕获关闭事件

    有点难描述说的是什么.大概就是下面这个图:窗体中嵌套一个Webbrowser,现在网页请求关闭 响应MessageHook事件: this.webBrowser.MessageHook += webB ...

  10. vue.js 学习笔记3——TypeScript

    目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...