简介

Git是强大的版本控制系统,主要功能是针对代码、配置文件等文本进行版本控制、备份等,同时个人认为还是分发代码的一个不错的方式。

常见用法

#创建远程git仓库
[root@test88 ~]# mkdir -p /backup/backup.git
[root@test88 ~]# cd /backup/backup.git
[root@test88 backup.git]# git init --bare #创建本地git仓库
[root@test88 ~]# git config --global user.name peter
[root@test88 ~]# git config --global user.email "peter@gmail.com"
[root@test88 ~]# git config --global color.ui true
[root@test88 ~]# git config --list
[root@test88 ~]# mkdir -p /source
[root@test88 ~]# cd /source/
[root@test88 source]# git init
[root@test88 source]# git remote add orgin peter@172.16.1.13:/backup/backup.git/
[root@test88 source]# git push -u origin master
#更简单的办法是直接从远程仓库克隆到本地
[root@test88 source]# git clone root@172.16.1.13:/backup/backup.git/ #提交修改,进行推送
[root@test88 source]# echo first > first.txt
[root@test88 source]# git add .
[root@test88 source]# git commit -m "first"
[root@test88 source]# git push
#每天备份可以写成脚本加入定时任务
#!/bin/bash
cd /source
git add .
git commit -m "backup $(date)"
git push #查看版本记录和恢复某个版本
[root@test88 source]# git log
[root@test88 source]# git checkout a1f9

其他用法

创建Git仓库
mkdir peter cd peter git init
提交数据
touch readme ;git status;git add readme;git commit -m "readme"; 
从暂存区移除数据
git rm --cached readme
查看历史版本记录
git log ; git log -2 最近两条;注:从当前HEAD往前;git log --pretty=oneline 单行显示每条记录
回退到上一个版本
git reset --hard HEAD^
查看所有版本记录
git reflog ; 查看历史和未来的版本记录
跳转到任意一个版本
git reset --hard 8a2225b
从暂存区或上个版本恢复文件
git checkout -- readme  // 暂存区有readme则从暂存区恢复,没有则从上一次版本库提交快照恢复
创建分支
git branch linux
切换分支,切换版本
git checkout linux   git checkout ID
查看分支
git branch
合并分支
git checkout master ; git merge linux
删除分支
git branch -d linux // 如果分支还没被合并则无法删除  
创建并切换分支
git checkout -b linux
创建版本标签
git tag v1.0 ; git tag v1.2 -m "version 1.2 is test"  // -m 添加标签说明
查看当前所有标签
git tag
查看版本详细信息
git show v1.0
删除标签
git tag -d v1.0
利用标签进行版本跳转
git reset --hard v1.0
克隆仓库
git clone git@github.com:peter/demo.git
查看和添加远程仓库
git remote; git remote add origin git@github.... 添加一个远程仓库
推送到远程仓库
git push -u origin master // 第一次加上-u,建立追踪关系,下次可以直接 git push 
The -u tells Git to remember the parameters, so that next time we can simply run git push and Git will know what to do.
gitlab搭建私有版本控制系统
 

git版本控制系统常见操作总结的更多相关文章

  1. Google Code项目代码托管网站上Git版本控制系统使用简明教程

    作为一个著名的在线项目代码托管网站,Google Code目前主要支持三种版本控制系统,分别为Git, Mercurial和 Subversion.Subversion即SVN相信大家都已经熟知了,这 ...

  2. Git版本控制系统VCS

    Git版本控制系统VCS 一.版本控制系统基本情况说明 版本控制是一种记录一个或者若干个文件内容的变化,以便将来查阅特定版本修订情况的系统 1.作用 记录文件的所有历史变化 随时可回复到任何一个历史状 ...

  3. git版本控制系统小白教程(上)

    前言:本文主要介绍git版本控制系统的一些基础使用,适合小白入门,因为内容较多,会分为两部分进行分享. Git介绍 ​ Git是目前世界上最先进的分布式版本控制系统.并且它是一个开源的分布式版本控制系 ...

  4. git版本控制系统小白教程(下)

    前言:本文主要介绍git版本控制系统的一些基础使用,适合小白入门,因为内容较多,会分为两部分进行分享,查看上部请点传送门. 删除文件 ​ git删除文件一般有三种情况,第一种是在工作区修改了文件,但是 ...

  5. git版本控制系统重新认识

    git 版本控制系统 目标:完全搞懂git分布式版本控制系统 搭建git版本控制系统 cvs集中化版本控制系统--集中式管理的服务器 git分布式版本控制系统--会将原始代码仓库镜像下来 新项目使用g ...

  6. Git 版本控制系统的基本使用、常用操作

    以Ubuntu16.04操作系统为例(其他系统类似),主要记录常用的.基本操作: 0. 安装Git 分散型版本控制系统(CVS): sudo apt-get install git 1. 初始化本地配 ...

  7. 初识git版本控制系统

    当下git分布式版本控制系统越来越火,掌握git也是必须的一个技能.因此,对git做了如下学习. Git初级指南 1. 先安装git.(ps:在select cmponents处要勾选Git Bash ...

  8. 如何选择版本控制系统 ---为什么选择Git版本控制系统

    版本控制系统 "代码"作为软件研发的核心产物,在整个开发周期都在递增,不断合入新需求以及解决bug的新patch,这就需要有一款系统,能够存储.追踪文件的修改历史,记录多个版本的开 ...

  9. git版本控制系统更新

    版本控制系统: 一.概念: 版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 二.版本控制系统分类 1.本地版本控制 ...

随机推荐

  1. [TJOI2013]单词 AC自动机

    题面: 洛谷 题解: 很久之前做的题了,只不过之前一直90....最近才发现是哪里写错了. 我们对字符集建AC自动机. 首先考虑一个暴力的做法,把文章当做一个长串,直接在自动机上跳,但是我们会发现,这 ...

  2. 【bzoj1502】月下柠檬树

    Portal -->bzoj1502 Solution 额其实说实在这题我一开始卡在了..这个阴影长啥样上QwQ 首先因为是平行光线然后投影到了一个水平面上所以这个投影一定是..若干个圆再加上这 ...

  3. poj2549 Sumsets

    Sumsets Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11886   Accepted: 3273 Descript ...

  4. springboot读取自己定义的配置文件的方式以及使用joda_time来处理时间日期

    总的来说呢,有两种方式,一种是原始的方式,即使用PropertiesUtils来读取配置文件. 第二种就是使用springboot的注解的方式来读取配置文件. 1.原始方式处理属性和时间日期: 工具类 ...

  5. bzoj 2277 [Poi2011]Strongbox 数论

    2277: [Poi2011]Strongbox Time Limit: 60 Sec  Memory Limit: 32 MBSubmit: 527  Solved: 231[Submit][Sta ...

  6. Qt ------ 获取 wifi 信息

    QProcess:可以调用外部进程 netsh wlan show interfaces:可以查看连接哪个wifi netsh wlan show networks:显示所有可用的wifi netsh ...

  7. 正则(?is)

    Q:经常看见的正则前面的 (?i) (?s) (?m) (?is) (?im) 是什么意思?A: 称为内联匹配模式,通常用内联匹配模式代替使用枚举值RegexOptions指定的全局匹配模式,写起来更 ...

  8. js知识点乱炖

    修改属性 元素.style.样式=值     document.getElementById('box').style.width='200px'; 属性操作方式 1.. 的 元素.属性名如果属性是单 ...

  9. 深度学习voc数据集图片resize

    本人新写的3个pyhton脚本. (1)单张图片的resize: # coding = utf-8 import Image def convert(width,height): im = Image ...

  10. 前端PHP入门-030-文件函数API

    bool file_exists ( $指定文件名或者文件路径) 功能:文件是否存在. bool is_readable ( $指定文件名或者文件路径) 功能:文件是否可读 bool is_write ...