1,git是啥?

最流行的分布式版本控制系统,在高度易用的同时,仍然保留着初期设定的目标。它的速度飞快,极其适合管理大项目,它还有着令人难以置信的非线性分支管理系统,可以应付各种复杂的项目开发需求。

重点1:git是分布式控制系统,没有中央服务器,每个设备上都有完整的版本库。

重点2:文件的改动历史是可见的,便于管理的

2,配置和使用

>git config --global user.name "Scott Chacon"    #启用前设置名字

>git config --global user.email "schacon@gmail.com"    #启用前设置email,个人设置的配置文件会在根目录的隐藏文件:.gitconfig 中保存

>git init    #第一次使用远程仓库,还没有仓库地址,先等等,参考资源:https://blog.csdn.net/TheMeLove/article/details/78228815,约等于百度云吧,我猜。

>git clone +网址    #会从远程仓库克隆代码,约等于从百度云下载资源,当然在github上,采用这种办法下载别人的开源代码也是可以的

>git init     #会在当前文件夹下创建一个.git隐藏文件,证明本地仓库被初始化。当前目录也会被认为是仓库

>git add file1 file2 file3    #会把file1到file3备份到缓存区,提前创建了file{1..3},每个的内容都是字符串:test

>git status    #查看本地仓库的状态,有哪些已经上传缓冲区那些文件没有上传缓冲区

>git diff --cached    #查看缓冲区哪些文件被修改了,

>git diff     #显示的是已经修改但是没有加到缓冲区去的内容

>git commit -m "add 3 files"    #git commit把缓冲区的内容提交到本地仓库,-m参数表示添加备注,提交以后缓存区清空

>git commit -a -m "add 3 files"    #把本地的修改(还没添加到缓冲区)和缓冲区的修改都递交到本地仓库,但是本地新建的文件夹例外。

>git rm file4 --cached    #把之前已经上传的file4从缓存区删去(并不会从本地删除),--cached参数大约是表示缓存区的意思

>git remote add haha http://xxx.xxx/xxx    #本地仓库与远程仓库相联系,远程主机名叫haha,解除联系用git remote rm +仓库名

>git remote -v    #查看自己的云端仓库相关信息

>git push haha master   #将本地仓库同步到自己的远端服务器:haha, 但是需要认证,输入服务器名字和密码,

3,分支与合并:

git项目管理默认有一个主要的程序叫master,很多branch分支

>git branch lianxi1    #创建一个叫lianxi1的分支master

>git branch    #查看自己有那些分支,此时显示lianxi1和*master,星号表示你当前在哪个主分支或者分支中

>git checkout lianxi1    #切换自己的位置到lianxi1分支,分支下创建文件夹的话,切换到master以后,创建的文件就不可见了

已知有一个文件test2,在master主分支中的内容是hello master  ; lianxi1分支中增加了一句: i am branch lianxi1,如果想让两个文件合并,需要先切换到master主分支,再执行:

>git merge -m "merge 2 files"  lianxi1    #首先保证分支是已经提交过的最新的,当前分支是master主分支,就可以合并lianxi1分支中的修改到主分支,假如有一个文件test2在lianxi1中和master中的 都被分别修改了,并且修改不一致,合并就会报错,此时直接暴力合并再vim修改test2就可以了,或者直接自己有意避免这个问题。

>git branch -d lianxi1    #删除一个名叫lianxi1的分支

>git reset --hard HEAD^    #回到合并之前的状态

4,git日志

>git log    #显示提交(commit)的历史,加上--stat参数会显示详细内容

>git log --pretty=oneline    #把提交日志文件输出的格式变成一行一行的那种

linux系统 之 git的更多相关文章

  1. 在linux系统下Git源码系统的文件下载

    Git是一个开源的分布式版本控制系统,在linux系统中下载git中的文件使用repo的很多. 网上有很多repo下载的地址失效,目前可用的链接在这里记录一下. 没有安装git的安装一下: sudo ...

  2. linux系统下git使用

    转载:http://www.cnblogs.com/bear2flymoon/p/4335364.html?ADUIN=563508762&ADSESSION=1430887070&A ...

  3. linux系统下 git 使用教程

    一.初始化 1.首先安装git软件,安装环境是centos 7.x下的云服务器.使用命令: #yum install git 2.设置用户名和邮箱(必须): # git config --global ...

  4. Linux系统下Git操作命令整理

    1.显示当前的配置信息 git config --list 2. 创建repo从别的地方获取 git clone git://git.kernel.org/pub/scm/git/git.git 自己 ...

  5. linux系统 使用git图形化管理工具———gitk

    运行安装命令: sudo apt-get install gitk 运行命令打开gitk : gitk

  6. linux系统下使用流行的版本管理工具 Git

    前几天被版本管理困扰了好久,主要是因为 没法回到之前的版本,新版本又出了问题真的很尴尬. 终于决定使用目前网上很火的版本管理工具-------Git 历史啥的就不说了,说些有用的. 我用的是oschi ...

  7. linux系统下本地搭建git服务器

    linux系统下如何搭建本地git服务器,用于存放团队的开发代码,如下步骤: 1.先用一台服务器来安装git,安装好linux以后,在这里选用的是Ubuntu 14.04.然后配置静态IP:172.1 ...

  8. 第三节 构造一个简单的Linux系统MenuOS——20135203齐岳

    第三节 构造一个简单的Linux系统MenuOS By 20135203齐岳 Linux内核源代码 arch/ 支持不同cpu的源代码 Documentations/ 文档存储 init/ 内核启动相 ...

  9. Linux Ubuntu搭建git服务器

    1. 安装 openssh-server ,用于创建SSH服务. sudo apt-get install openssl-server 使用命令ps -e|grep ssh,查看ssh服务是否启动. ...

随机推荐

  1. JSON语法、对象、遍历数组的区别和基本操作

    JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是: ...

  2. C++ 对象实例化(转)

    C++ 对象实例化的一些概念: C++ 如果直接定义类,如classA  a; a存在栈上(也意味着复制了对象a在栈中):如果classA  a = new classA就存在堆中. 一.new创建类 ...

  3. win10的cmd中显示:telnet不是内部或外部命令也不是可运行的程序或批处理?

    win10的cmd中显示:telnet不是内部或外部命令也不是可运行的程序或批处理? 摘录自:https://blog.csdn.net/haijing1995/article/details/664 ...

  4. Linux学习笔记:【004】Linux内核代码风格

    Chinese translated version of Documentation/CodingStyle   If you have any comment or update to the c ...

  5. spring MVC页面的重定向

    如图,一个jsp页面跳转到下一个jsp页面通常需要上一个页面发出带有参数得请求,我们都知道spring MVC是不能直接跳页面的. 需要配置视图解析器,通过返回视图名再跳转到相应得JSP页面. 即使这 ...

  6. jQuery使用(二):DOM样式操作和属性操作

    DOM取值与赋值 .html() .text() .size() 1.html()方法类似原生DOM的属性innerHTML,不传入参数的时候默认为取指定元素内的HTML内容,包含前后空白文本结构,以 ...

  7. HDU - 3642 Get The Treasury(线段树求体积交)

    https://cn.vjudge.net/problem/HDU-3642 题意 求立方体相交至少3次的体积. 分析 三维的呢..首先解决至少覆盖三次的问题.则用三个标记,更新时的细节要注意. 注意 ...

  8. 2016vijos 1-3 兔子的晚会(生成函数+倍增FWT)

    求出序列的生成函数后,倍增FWT #include<cstdio> using namespace std; #define N 2048 ; int inv; ]; int Pow(in ...

  9. mysql创建用户与pymsql模块

    mysql 创建用户及增删改查 创建mysql 用户 with grant option 表示用户不存在自主创建 grant [ select ……,insert ……| all ] on 库名.表名 ...

  10. 使用Calender类获取系统时间和时间和运算

    使用Calender类获取系统时间和时间和运算: @Test public void testCal(){ //使用Calender对象获取时间,并对时间进行计算: Calendar instance ...