*初始化git仓库,使用gitinit命令

  *添加文件到git仓库分两步:

  1、使用git add filename ;可分多次使用,添加多个文件到暂存区

2、使用git commit -m “说明” ;完成提交到分支

兄弟连linux培训

教程  Git在

linux

下的使用

  *查看工作区状态,使用git status 命令;如果提示有修改可使用git diff filename 查看修改内容

  *HEAD指向当前版本,HEAD^表示上一个版本,HEAD^^上上一个版本……HEAD~100指向之前第100个版本。

  *回退版本:使用git log查看提交历史;使用gitlog --pretty=oneline 精简显示

  使用git reset --hardcommit_id 回退到版本号为commit_id的版本

  *回退版本之后如果想再看改回来,可以使用git reflog 查看历史命令,找出想改回的版本号,再使用git resethard commit_id 返回即可。

  *注意:git跟踪并管理的是修改,而不是文件,如果一个文件修改并add之后,再次修改,如果不再次add就提交的话,只会提交第一次的修改。

  *撤销修改:

  1、如果文件还在工作区,即没有add也没有commit,则使用gitcheckout -- filename 还原到服务器版即可;

  2、如果已经add到暂存区,首先使用git reset HEAD filename从暂存区取回工作区,再按照1进行操作即可;

  3、如果已经提交到版本库,则按照版本回退的方式进行修改即可;

  4、如果已经push到远程仓库,就麻烦了

  *删除使用以下命令:

  1、gitrm filename 从工作区删除

  2、gitcommit -m ”说明“ 更新分支中文件进行删除

  将在工作区的文件删除之后,可以使用gitcheckout -- filename 从分支中取回,但是只能恢复文件到最新版本,最后一次提交之后的修改则不能恢复。

  *分支:

  1、创建分支

  git checkout -b branchname 创建并切换到改分区,相当于一下两个命令:

  git branch branchname 创建分支

  git checkout branchname 切换到分区

  2、查看当前指向的分支:git branch 会列出所有分支,当前指向的分支之前多了个*

  3、切换分支就是git checkout branchname

  4、合并分支:git merge branchname 合并branchname到当前分支

  5、删除分支:git branch -d branchname 删除branchname分支

  注意:创建、合并、删除分支都非常快,git鼓励使用分支完成某个任务,合并后删除分支,和直接在master分支上进行工作是一样的效果,但是过程更加安全; 这些之所以快是因为在这些过程中我们只是修改了指向分支的指针,如创建一个branch就是创建了一个指向分支的指针,然后修改HEAD指向该指针;即HEAD指向分支,分支就是提交。

  *冲突解决:git无法自动合并分支时,就必须首先解决冲突;解决冲突之后,再提交,即完成了合并

  使用git log --graph 可以查看分支合并图。

  *保存工作现场 git stash 保存之后就可以进行其他工作 而不影响上次的修改

  恢复工作现场:1、git stash apply 恢复时并不删除stash中内容

  2、gitstash pop 恢复时会删除stash中的内容

  *远程库信息产看使用git remote (-v)加上-v显示信息更加详细

  *分支推送到远程库:即将所有本地的提交推送到远程库

  git push origin(远程库名) master (要推送的分支)

  *抓取分支:git pull ; git clone

  *协作模式:

  1、使用git push origin branchname 推送自己的修改

  2、如果推送失败,因为远程分支比本地更新,先使用git pull 合并

  3、如果合并有冲突,解决冲突,在本地提交

  4、再推送

  注意:如果使用git pull 合并时提示 ”no tracking information“说明本地分支没有和远程分支建立链接关系,使用以下指令建立关系:git branch --set -upstream branch origin/branchname

  *在本地创建与远程对应的分支:git branch -b branchname origin/branchname 本地与远程分支的名称最好一致

  *创建标签

  1、打标签git tag name 默认标签打在最新提交的commit上,如果想打在其他版本上,找到commit_id即可

  2、显示标签:git log -pretty=oneline --abbrev -commit

  git tag tag_name commit_id

  3、查看标签:git tag 显示所有标签

  4、查看标签信息:git show tag_name

  5、创建带有说明的标签: git tag -a tag_name -m ”信息“;-a表示标签名,-m指定说明文字

  *操作标签:git tag -d tag_name 删除标签

  推送标签到远程库:git push origintag_name

  一次推送所有标签到远程库:git pushorigin --tag

Linux培训教程 Git在linux下的使用的更多相关文章

  1. Linux培训教程 linux系统下分割大文件的方法

    在linux中分割大文件,比如一个5gb日志文件,需要把它分成多个小文件,分割后以利于普通的文本编辑器读取. 有时,需要传输20gb的大文件,Linux培训 教程件到另一台服务器,也需要把它分割成多个 ...

  2. Linux培训教程 linux磁盘分区详解

    在学习 Linux 的过程中,安装 Linux 是每一个初学者的第一个门槛.在这个过程中间,最大的困惑莫过于给硬盘进行分区.虽然,现在各种发行版本的 Linux 已经提供了友好的图形交互界面,但是很多 ...

  3. Linux培训教程 linux中nl命令使用介绍

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...

  4. Linux培训教程 浅谈:PHP在linux上执行外部命令(整理)

    一.PHP中调用外部命令介绍 二.关于安全问题 三.关于超时问题 四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍 在PHP中调用外部命令,可以用,1>调用专门函数 ...

  5. Linux培训教程 linux下修改用户权限的方法

    一般我们日常碰到要修改用户权限的,往往是要么修改一下用户的gorupid,通过上面命令可以改;要么是把普通用户改成具有超级权限的用户,这个一般自己不能直接改,只能是root或有root权限的用户才能帮 ...

  6. Linux培训教程lgzip命令详解和使用实例

    gzip不仅可以用来压缩大的.较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式.据统计,gzip命令对文本文件有60%-70%的压缩率. 1.命令格式 ...

  7. 【Linux】【GIt】Linux下安装和配置Git(转)

    yum安装 这里采用的是CentOS系统,如果采用yum安装git的方式: yum install git 很快就okay了,但是这里遇到一个问题.: 在网上搜寻了原因,说是要安装: yum inst ...

  8. linux入门教程(一) 关于linux的历史

    很多关于linux的书籍在前面章节中写了一大堆东西来介绍linux,可惜读者看了好久也没有正式开始进入linux的世界,这样反而导致了他们对linux失去了一些兴趣,而把厚厚的一本书丢掉. Linux ...

  9. Linux视频培训教程

    很详尽的Linux培训教程,既包含日常工作常常要用到的实践及技巧,又包含Linux认证及系统管理及架构,讲的很不错.最关键的.这么具体,完整的教程还是免费的.花了点时间拿它整理了下. 第一部分: Li ...

随机推荐

  1. Shell编程、part3

    本节内容 1. shell流程控制 2. for语句 3. while语句 4. break和continue语句 5. case语句 6. shell编程高级实战 shell流程控制 流程控制是改变 ...

  2. 【LeetCode】122、买卖股票的最佳时机 II

    Best Time to Buy and Sell Stock II 题目等级:Easy 题目描述: Say you have an array for which the ith element i ...

  3. python 基础复习

    1.简述cpu.内存.硬盘的作用 cpu (1)cpu:处理逻辑运算.算术运算 (2)cpu:接受指令传给电脑硬件,让其运行 内存: (1)内存:从硬盘中读取数据,供其cpu调取指令运行,短暂的存贮数 ...

  4. Java 并发编程:核心理论(一)

    前言......... 并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能.它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰.思维缜密,这样才能写出高效.安全.可 ...

  5. 第七周课程总结&实验报告

    课程总结 主要学习了抽象类与接口的应用 1.抽象类的成员可以具有访问级别 接口的成员全部public级别 2.抽象类可以包含字段 接口不可以 3.抽象类可以继承接口 接口不能继承抽象类 4.抽象类的成 ...

  6. maven 报错 -source 1.5 中不支持 diamond 运算符

    maven 执行install 报-source 1.5 中不支持 diamond 运算符 解决办法, 指定编译版本 <build> <plugins> <plugin& ...

  7. web框架 Spring+SpringMvc+Jpa 纯注解搭建

    0.jar包依赖 maven  pom.xml <properties> <spring_version>4.3.25.RELEASE</spring_version&g ...

  8. eclipse project--->clean作用

    eclipse project-->clean  ,clean主要是class文件删除,并同时编译新的工程,生成新的class文件. 如果修改代码后,在运行时,还是旧代码,可能class文件还是 ...

  9. AppCan适配问题

    使用AppCan调试中心时,屏幕适配是个问题,经过多次调试总结出如下经验: 1,使用HD+(1560 x 720):显示错乱 2,使用FHD+ (2340 x 1080):显示错乱 3,HD (128 ...

  10. python告诉你啥是佩奇

    被<啥是佩奇>这支广告片刷屏了. 佩奇明明是个喜剧角色, 但是看哭了所有人. <啥是佩奇>??? 效果图如下: # -*- coding:utf-8 -*- from turt ...