Git版本号控制
甚至有时,中央server磁盘故障,恰巧又没有做备份或备份没及时,那就可能有丢失数据的风险。
但Git是分布式的版本号控制系统。client不仅仅是提取最新版本号的快照,并且将整个代码仓库镜像复制下来。假设不论什么协同工作用的server发生问题了,也能够用不论什么一个代码仓库来恢复。
并且在协作server宕机期间,你也能够提交代码到本地仓库,当协作server正常工作后。你再将本地仓库同步到远程仓库。
安装Git
Linux系统下通过git命令查看安装情况,假设没有安装能够通过sudo apt-get install git完毕安装。
安装完毕后。还须要通过进一步设置
git config --global user.name "name"
git config --global user.email "email address"
创建版本号库
什么是版本号库呢?版本号库又名仓库,英文名repository,你能够简单理解成一个文件夹。这个文件夹里面的全部文件都能够被Git管理起来,每一个文件的改动、删除,Git都能跟踪。以便不论什么时刻都能够追踪历史,或者在将来某个时刻能够“还原”。
创建一个空文件夹,并在当前文件夹以下使用git init将这个文件夹变成Git能够管理的仓库。
写好一个文件后能够使用git add filename将文件加入到仓库。
使用git commit -m "your describe"把文件提交到仓库-m后面的參数用于描写叙述文件的更改情况。以便于每次查看;
版本号查看
git status能够实时查看仓库的状态
git diff filename 能够查看当前文件上一次提交的文件的不同
git log能够查看版本号的历史记录
git reflog查看历史命令
因为在Git中HEAD指向的是当前版本号。因此能够使用git reset --hard commit_id(提交的版本号的ID号或者HEAD^-上一版本号。HEAD^^-上上版本号,HEAD~100上100个版本号)
版本号回退
1.当你想丢弃工作区的改动时能够使用git checkout --filename
2.当改动之后又提交到暂存区时能够使用git reset HEAD filename就回到了1的情况。然后反复1的操作就可以
删除文件
git rm filename能够从版本号库中删除文件,并用git commit提交
远程仓库
关于配置和克隆请參考廖老师博客点击打开链接
分支管理
使用git checkout -b branchname能够创建一个分支并切换到该分支。其相当于命令git branch branchname加上git checkout branchname(用于在分支间切换)
git branch 能够查看分支,当前分之前会有一个*
合并某分支到当前分支git merge branchname(高速合并)能够使用git merge --no-ff -m "your describ" branch关掉高速合并。这个时候能够看到以前做过的合并
删除分支git branch -d branchname
(当git无法自己主动合并分支时,说明存在冲突这个时候要解决掉冲突然后才干合并)
git log --graph能够看到分支合并图
git stash能够暂存当前的工作现场,然后修复bug,再git stash pop回到工作现场
假设要丢弃一个没有被合并过的分支。能够通过git branch -D filename强行删除
多人合作
git remote -v显示具体的远程库信息
git push origin branchname将本地分支推送到,假设失败用git pull抓取远程的新提交
git checkout -b branchname origin/branchname在本地创建和远程分支相应的分支
git branch --set-upstream branchname origin/branchname
git pull从远程抓取分支
Git版本号控制的更多相关文章
- Git版本号控制 为什么那么复杂 头大 (忍不住强烈吐槽)
想把自己的源代码保存到云端.想到了用Github.com,然后便開始看怎么使用GIT. 一開始,没有接触之前,想的非常easy的.应该就跟SVN几乎相同吧.写好了提交就能够了. 只是使用了之后才发现根 ...
- 在项目开发中使用Git版本号控制工具以提高效率
安装Git(linux centos平台) 源代码方式安装 1.装依赖 $ yum install curl-devel expat-devel gettext-devel openssl-devel ...
- Git版本号控制:Git分支处理
http://blog.csdn.net/pipisorry/article/details/46958699分支的意义创建分支能够避免提交代码后对主分支的影响,同一时候也使你有了相对独立的开发环境. ...
- Git(一):Git与版本号控制简单介绍
Intro 版本号控制系统是什么 版本号控制系统(Version Control System,VCS)能够帮助我们记录和跟踪项目中各文件内容的改动变化.它能够帮我们保存项目的各个版本号.以 ...
- eclipse中使用git进行版本号控制
协作开发的时候没有版本号控制是非常痛苦的事情,使用git能够非常好的完毕这项任务,由于非常多的开源码都在github上公布,因此学会使用git是非常重要的一项技能. 这篇写的是在eclipse下使用的 ...
- 版本号控制-git(二)
上次文章给大家介绍了Git的一些基本知识(http://www.cnblogs.com/jerehedu/p/4582398.html).并介绍了使用git init初始化化版本号库.使用git ad ...
- 云盘+Git GUI实现云盘文件版本号控制
以下介绍操作细节 1.先下载Git GUI 下载地址:http://msysgit.github.io/ 再下载百度云网盘 下载地址:http://pan.baidu.com 接下来就是安 ...
- 版本号控制-GitHub
前面几篇文章.我们介绍了Git的基本使用方法及Gitserver的搭建.本篇文章来学习一下怎样使用GitHub. GitHub是开源的代码库以及版本号控制库,是眼下使用网络上使用最为广泛的服务,Git ...
- [Android]egit取消文件版本号控制
开发项目,多人合作开发变得越来越重要了,在此同一时候,使用git作为协同工具也是越来越多.在此.介绍一下egit取消文件版本号控制的方法. (egit即为eclipse中的git插件) 1.打开Nav ...
随机推荐
- 汇编中中括号[]作用以及lea和mov指令的区别
现在总结一下:其中牵扯到lea指令,mov指令,[] 一.lea指令:对于寄存器来说:第二个操作数是寄存器必须要加[],不然报错,这里lea就是取[寄存器]的值,如:mov eax,2lea ebx, ...
- 各大CMS系统优缺点(2017)
各大CMS系统优缺点(2017) 总结 WordPress之前用过,可能需要再完整的用一个才会比较了解. 从2015年各行业建站规模来看,还有一大批人想自己搭建网站,下面为大家盘点一下比较实用CMS系 ...
- BZOJ 3083 树链剖分+倍增+线段树
思路: 先随便选个点 链剖+线段树 1操作 就直接改root变量的值 2操作 线段树上改 3操作 分成三种情况 1.new root = xx 整个子树的min就是ans 2. lca(new roo ...
- 相机拍照友盟检测crash是为什么?
友盟报错如下* setObjectForKey: object cannot be nil (key: UIImagePickerControllerOriginalImage)(null)(( 0 ...
- IBM小机的开机步骤
IBM小机的开机步骤 以下以 IBM P570 小机包含静态逻辑分区(LPAR) 的 Oracle9i RAC环境为例进行讨论 1. 设备(小机.存储.光交......)加电 2. 启动存储 3. 启 ...
- mybatis-generator-core快速生成实体类和Mapper
日常使用Mybatis少不了和实体类和 Mapper 打交道.除了我们手写来实现,还可以使用 mybatis-generator-core 来快速生成 实体类和 Mapper. 步骤如下: 1.下载 ...
- Hadoop集群配置搭建
环境:Centos 6.9,Hadoop 2.7.1,JDK 1.8.0_161,Maven 3.3.9 前言: 1.配置一台master服务器,两台或多台slave服务器. 2.master可 ...
- DedeCMS文章编辑不更新时间1970年1月1日
在修改文章或者后期优化的时候,织梦dedecms5.7版本存在一个问题,修改文章的同时也修改了文章的发布时间,这个功能可能有些人比较需要,但同时也有些站长朋友又不需要,因为我们编辑某个文章的时候,发现 ...
- free---显示内存
free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区. 语法 free(选项) 选项 -b:以Byte为单位显示内存使用情况: -k:以KB为单位显示内存使用情况: ...
- java开发微信公众号支付(JSAPI)
https://www.cnblogs.com/gopark/p/9394951.html,这篇文章写的已经很详细了. 下面写一下自己的思路: 1.首先下载demo,地址:https://pay.we ...