git版本控制系统常见操作总结
简介
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版本控制系统常见操作总结的更多相关文章
- Google Code项目代码托管网站上Git版本控制系统使用简明教程
作为一个著名的在线项目代码托管网站,Google Code目前主要支持三种版本控制系统,分别为Git, Mercurial和 Subversion.Subversion即SVN相信大家都已经熟知了,这 ...
- Git版本控制系统VCS
Git版本控制系统VCS 一.版本控制系统基本情况说明 版本控制是一种记录一个或者若干个文件内容的变化,以便将来查阅特定版本修订情况的系统 1.作用 记录文件的所有历史变化 随时可回复到任何一个历史状 ...
- git版本控制系统小白教程(上)
前言:本文主要介绍git版本控制系统的一些基础使用,适合小白入门,因为内容较多,会分为两部分进行分享. Git介绍 Git是目前世界上最先进的分布式版本控制系统.并且它是一个开源的分布式版本控制系 ...
- git版本控制系统小白教程(下)
前言:本文主要介绍git版本控制系统的一些基础使用,适合小白入门,因为内容较多,会分为两部分进行分享,查看上部请点传送门. 删除文件 git删除文件一般有三种情况,第一种是在工作区修改了文件,但是 ...
- git版本控制系统重新认识
git 版本控制系统 目标:完全搞懂git分布式版本控制系统 搭建git版本控制系统 cvs集中化版本控制系统--集中式管理的服务器 git分布式版本控制系统--会将原始代码仓库镜像下来 新项目使用g ...
- Git 版本控制系统的基本使用、常用操作
以Ubuntu16.04操作系统为例(其他系统类似),主要记录常用的.基本操作: 0. 安装Git 分散型版本控制系统(CVS): sudo apt-get install git 1. 初始化本地配 ...
- 初识git版本控制系统
当下git分布式版本控制系统越来越火,掌握git也是必须的一个技能.因此,对git做了如下学习. Git初级指南 1. 先安装git.(ps:在select cmponents处要勾选Git Bash ...
- 如何选择版本控制系统 ---为什么选择Git版本控制系统
版本控制系统 "代码"作为软件研发的核心产物,在整个开发周期都在递增,不断合入新需求以及解决bug的新patch,这就需要有一款系统,能够存储.追踪文件的修改历史,记录多个版本的开 ...
- git版本控制系统更新
版本控制系统: 一.概念: 版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 二.版本控制系统分类 1.本地版本控制 ...
随机推荐
- Educational Codeforces Round 55 Div. 2 翻车记
A:签到. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> ...
- byte数组转float实现与byte转换其它类型时进行&运算原理
下面是将byte数组转换为float的实现 public static float getFloat(byte[] b) { int accum = 0; accum = accum|(b[0] &a ...
- BZOJ4735 你的生命已如风中残烛 【数学】
题目链接 BZOJ4735 题解 给定一个序列,有的位置为\(w_i - 1\),有的位置为\(-1\),问有多少种排列,使得任意前缀和非负? 我们末尾加上一个\(-1\),就是要保证除了末尾外的前缀 ...
- 洛谷P4630 [APIO2018] Duathlon 铁人两项 【圆方树】
题目链接 洛谷P4630 题解 看了一下部分分,觉得树的部分很可做,就相当于求一个点对路径长之和的东西,考虑一下能不能转化到一般图来? 一般图要转为树,就使用圆方树呗 思考一下发现,两点之间经过的点双 ...
- makefile使用笔记(二)变量
By francis_hao Oct 30,2017 makefile中可以使用变量,变量有多种类型,下面分别介绍 简单变量 简单变量的命名规则和c语言一致. 给变量赋值就表示创建了这个变量 ...
- java根据系统生成临时文件
createTempFile 会根据当前系统,自动找系统的临时文件目录,在此目录下生成临时文件
- Codeforces 864E dp
题意: 房间着火了,里面有n件物品,每件物品有营救需要的时间t,被烧坏的最晚时间d,他的价值p,问能得到的最大价值,并且输出营救出来的物品编号 代码: //必然是先救存活时间短的即d小的,所以先排个序 ...
- HDU 2582 规律 素因子
定义$Gcd(n)=gcd(\binom{n}{1},\binom{n}{2}...\binom{n}{n-1})$,$f(n)=\sum_{i=3}^{n}{Gcd(i)}$,其中$(3<=n ...
- HDU 1333 基础数论 暴力
定义一种数位simth数,该数的各位之和等于其所有质因子所有位数字之和,现给出n求大于n的最小该种数,n最大不超过8位,那么直接暴力就可以了. /** @Date : 2017-09-08 14:12 ...
- 课程设计——利用信号量实现读-写者问题(JAVA)
package cn.Douzi.ReadWriter; import java.util.Scanner; public class ReadWrite { static public int co ...