Git分布式版本管理工具基本使用方法
一、Git简介
早先linux内核代码托管在BitKeeper,这个是商业的,但是免费给linux社区使用;
linux社区有个人试图破解BitKeeper,被BitKeeper发现后不再免费提供使用权,于是linus花两周时间开发了一个分布式的版本控制系统,就是Git;
其实Git功能和svn是类似的,但svn是集中管理,Git是分布式管理;
集中管理:必须要有一台服务端,代码仓库是在服务端上,客户端(个人电脑)需要从服务器上同步代码到自己电脑上,开发完要推送到服务端,这种架构依赖网络,传输也比较慢;
分布式:可以没有服务端,所有个人电脑都可以有完整的代码库,代码的更新、推送、分支、合并都可以在自己电脑上完成。它也支持多人协作,不过需要有一个公共的Git服务器作为支撑。
二、安装Git
1、CentOS上:
yum -y install epel-release
yum -y install git
2、Ubuntu上
sudo apt-get install git
3、windows上安装msysgit
https://git-for-windows.github.io/
安装完成后,还需要设置用户名和邮箱
git config --global user.name "fansik"
git config --global user.email "shandingshangdeyu@hotmail.com"
设置好用户名和邮箱后会在用户家目录下生成.gitconfig文件
三、创建版本仓库并推送文件
mkdir /home/gitroot
cd /home/gitroot
初始化,让/home/gitroot编程git可以管理的仓库
git init
初始化以后会在/home/gitroot目录下生成一个.git的目录
添加个文件
echo "fansik\nnimei" > fansik.java
将更改的文件加入到代码仓库(加入后使用git diff就看不到不同了但是使用git status可以看到是暂存状态并显示修改的文件)
git add fansik.java
撤销提交:
git reset HEAD fansik.java
如果文件修改了但又想恢复成版本库中的内容可以使用:
# git checkout -- fansik.java
叫暂存文件提交到版本库中:
git commit -m "add new fansik.java"
四、版本变更
多次更改fansik.java文件并进行add和commit操作后可以通过git log来查看修改记录
git log显示所有提交git仓库的记录操作
git log --pretty=oneline 每次修改显示为一行
通过git log可以查看过去提交的所有版本,所以根据这个log可以指定回退某个版本
git reset --hard dee6这个标识的版本,标识可以简写(最少4位)
当退回到该版本后在git log则最上面的版本不在显示了,如果先在退回到第一行那个版本可以使用git reflog显示所有的版本
五、文件删除
先删除文件
rm -rf 2.txt
删除暂存文件
git rm 2.txt
删除仓库中的文件
git commit -m "delete 2.txt"
Git分布式版本管理工具基本使用方法的更多相关文章
- 谈谈分布式版本管理工具Git
一.主流的版本管理工具 目前在企业中比较主流的版本管理工具有:GIT.SVN.CVS等等. 二.什么是Git? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.是 L ...
- 分布式版本管理工具 git常用命令
Git global setup git config --global user.name "joey" git config --global user.email " ...
- Git 分布式版本管理
Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...
- Git分布式版本控制工具
一.安装Git 1.下载Windows版的Git:msysgit:官方下载地址:http://msysgit.github.io,安装选定要安装的目录(路径杜绝中文),剩下的按照默认安装即可,参考: ...
- it入门之:学会使用Git 分布式版本控制工具
环境:window 工具:git & TortoiseGit 下载安装以及配置环境变量 :略略略 创建Github账户:登录https://github.com/用自己的常用邮箱创建账户,用来 ...
- Git 分布式版本管理器 windows环境下使用
首先需要下载Git来安装 没有安装文件的小伙伴可以网盘下载——> https://pan.baidu.com/s/1owwUItDri9skqYzOjzXLsw 之后安装Git 一路很顺 ...
- git版本管理工具常用命令
git是分布式版本管理工具,一台电脑既可以是客户端,也可以是服务端.工作过程中可以断开网络.svn是集中式版本管理工具,一台服务器控制很多客户端,使用过程不能断网. git的优点有:适合分布式开发,强 ...
- git分布式版本控制系统的概述和安装
Git历史 同生活中的许多伟大赛事一样,Git诞生于一个极富纷争大举创新的年代.Linux内核开源项目有着为数众广的参与者.绝大多数的Linux内核维护工作都花在了提交补丁和保存归档的繁琐事务上(19 ...
- git源代码管理工具
git是一款源代码管理工具 是分布式版本管理工具 分布式管理必须先在本地提交然后才能提交到服务器: svn集中式版本管理工具 集中式版本管理工具离开服务器就做不了版本管理: 初始化仓库 1.用git初 ...
随机推荐
- Spark高级数据分析中文版-读者交流
第二章: 备注:1.本书第二章样例数据由于才有的是短链接,国内的用户可能无法下载.我把数据集拷贝到百度网盘上.大家可以从这个地方下载:http://pan.baidu.com/s/1pJvjHA7 谢 ...
- win10下安装USB-Blaster哈希值错误
插入usb-blaster后,无法安装驱动,一直显示感叹号,更新驱动后显示“文件的哈希值不在指定的目录”这样的错误提示,解决方法如下:1.Windows键+ R,输入shutdown.exe /r / ...
- cookies的获取,删除,设置
cookies,sessionStorage 和 localStorage 的区别? 1.cookie在浏览器和服务器间来回传递. sessionStorage和localStorage不会: 2.s ...
- eap-peap/mschapv2
eap-peap/mschapv2 文件路径 用途 示例 备注 #gedit /usr/local/etc/raddb/sites-available/default #gedit /us ...
- CSS中box-sizing属性的理解与部分用法
今天看了一些关于box-sizing的一些资料,在这里整理一下,希望也能对大家有所帮助. box-sizing是CSS的一个属性,很好的解决了盒模型的相关问题.CSS中的盒模型(Box model)分 ...
- 简述Git(Linux、Android~~开源)
Git——源代码管理软件,Android及Linux内核,驱动开发的过程中涉及的大量的源代码,都由Git管理 (一)安装Git Ubuntu Linux10.10或更新的版本,使用下面命令来安装Git ...
- Spark源码学习1.2——TaskSchedulerImpl.scala
许久没有写博客了,没有太多时间,最近陆续将Spark源码的一些阅读笔记传上,接下来要修改Spark源码了. 这个类继承于TaskScheduler类,重载了TaskScheduler中的大部分方法,是 ...
- elasticsearch,python包pyes进行的处理
elasticsearch:高性能搜索引擎,官网:https://www.elastic.co/products/elasticsearch/ 对于它相信大家都不陌生,es的使用已经广泛存在 各大网站 ...
- PKU 1006
数学问题吧,有兴趣的可以研究一下“中国剩余定理” // 1006.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include < ...
- Myeclipse+AJAX+Servlet
最近刚开始学AJAX的知识,这里介绍一个简单的Myeclipse+AJAX+Servlet项目. 此项目包含3个文件:index.jsp.check.java.还有一个需要配置的文件是:web.xml ...