1、基本概念

  • 版本控制系统:一种软体工程技巧,籍以在开发的过程中,确保由不同人所编写的同一项目代码都得到更新。并追踪、记录整个开发过程。
  • 集中式(SVN)/ 分布式(GIT)版本控制系统:SVN的版本库集中存放在中央服务器,类似图书馆;GIT不设置中央服务器,相比于SVN的最大区别在于开发者可以先将代码提交到本地,进而通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
  • Git:一个开源的分布式版本控制系统。最早版本由Linux创始人Linus采用C语言写于2005年。
  • Github:一个提供Git仓库托管服务的网站。
  • 工作区:本地电脑中存放代码的目录。
  • 暂存区:存放于.git 文件夹的 /index文件夹中。
  • 版本库:工作区的隐藏目录 .git。
  • 分支:Git的分支可以让你在主线(master分支)之外进行代码提交,当你完成功能后,测试通过再把你的分支合并到主线。

2、常用代码

  1. # 初始化,设置名字和邮箱
    $ git config --global user.name "cxc1357"
    $ git config --global user.email "cxc1357@126.com"

    # 查看创建的本地文件夹gitconfig
    $ cat ~/.gitconfig

    # 克隆Git仓库到本地文件夹
    $ git clone git://github.com/schacon/grit.git mygrit

    # 在当前目录创建一个.git目录
    $ git init

    # 查看当前git仓库的状态
    $ git status

    # 创建分支
    $ git branch experiment1

    # 查看分支
    $ git branch

    # 转到分支(签出)
    $ git checkout experiment1

    # 合并分支
    $ git merge -m 'XXX' experiment1

    # 删除分支
    $ git branch -d experiment1

    # 撤销合并
    $ git reset --hard HEAD^

    # 将其他仓库的分支与自己的合并
    $ git pull /tmp/myrepo master

    # 查看日志
    $ git log

    # 加入缓存区
    $ git add file1 file2 file3

    # 查看被修改的文件(输入q退出)
    $ git diff --cached

    # 提交到本地仓库,并添加注释
    $ git commit -m add 3 files

    # 上传到远程仓库
    $ git remote add <主机名> <远程仓库地址>

参考:

使用开源中国(码云)托管代码

https://www.cnblogs.com/rocedu/p/5155128.html

[linux] Git基本概念&操作的更多相关文章

  1. 让linux好用起来--操作使用技巧

    让linux好用起来--操作使用技巧 1   概述 在一个初学者眼里,linux的 CLI 界面没有图形界面那样多彩和友好,会让人产生畏难心理,但是作为一个稍微进阶的linux玩家,自然会积累不少经验 ...

  2. linux git 推送空文件夹

    /********************************************************************************* * linux git 推送空文件 ...

  3. Git基本命令行操作 (转)

    Git远程操作详解   作者: 阮一峰 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和 ...

  4. linux 修改时间 - [命令操作]

    我们一般使用“date -s”命令来修改系统时间.比如将系统时间设定成1996年6月10日的命令如下. #date -s 06/10/96 将系统时间设定成下午1点12分0秒的命令如下. #date ...

  5. Linux负载均衡概念与实践(一)

    根据网上文章整理. 负载均衡软件LVS(Linux Virtual Server)概念篇 lvs是在linux操作系统基础上建立虚拟服务器,实现服务节点之间的负载均衡.它是基于linux内核实现的.2 ...

  6. Linux(二)—— Unix&Linux 的基本概念

    Linux(二)-- Unix&Linux 的基本概念 计算机 = 主机(host)+ 终端(terminal) 主机 = 内核 + 实用工具 内核(kernel) 当计算机启动时,计算机要经 ...

  7. linux信号基本概念及如何产生信号

    linux信号基本概念及如何产生信号 摘自:https://blog.csdn.net/summy_j/article/details/73199069 2017年06月14日 09:34:21 阅读 ...

  8. linux 内核的链表操作(好文不得不转)

    以下全部来自于http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 无任何个人意见. 本文详细分析了 2.6.x 内 ...

  9. 使用 expect 重启失败的 git pull/push 操作

    问题的提出 最近使用 github 上传.下载项目代码时,经常会卡很久,有时候在命令行打了 git push 然后就去上厕所了,结果等我回来的时候,发现 push 早已经失败了,还得重新提交一下.如果 ...

随机推荐

  1. DAOS 分布式异步对象存储|架构设计

    分布式异步对象存储 (DAOS) 是一个开源的对象存储系统,专为大规模分布式非易失性内存 (NVM, Non-Volatile Memory) 设计,利用了SCM(Storage-Class Memo ...

  2. javascript是一种什么样的语言

    javascript是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTM ...

  3. LiteOS内核源码分析:任务LOS_Schedule

    摘要:调度,Schedule也称为Dispatch,是操作系统的一个重要模块,它负责选择系统要处理的下一个任务.调度模块需要协调处于就绪状态的任务对资源的竞争,按优先级策略从就绪队列中获取高优先级的任 ...

  4. 博文推荐|多图详解 Apache Pulsar 消息存储模型

    关于 Apache Pulsar Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息.存储.轻量化函数式计算为一体,采用计算与存储分离架构设计,支 ...

  5. 【算法学习笔记】Meissel-Lehmer 算法 (亚线性时间找出素数个数)

    「Meissel-Lehmer 算法」是一种能在亚线性时间复杂度内求出 \(1\sim n\) 内质数个数的一种算法. 在看素数相关论文时发现了这个算法,论文链接:Here. 算法的细节来自 OI w ...

  6. SpringBoot开发秘籍 - 集成Graphql Query

    概述 REST作为一种现代网络应用非常流行的软件架构风格受到广大WEB开发者的喜爱,在目前软件架构设计模式中随处可见REST的身影,但是随着REST的流行与发展,它的一个最大的缺点开始暴露出来: 在很 ...

  7. Foreign Exchange UVA - 10763

      Your non-profit organization (iCORE - international Confederation of Revolver Enthusiasts) coordin ...

  8. JAVAEE_Servlet_15_HttpServletRequest中常用方法(二)

    HttpServletRequest中常用方法 ## HttpServletRequest中的第二类方法 获取各种路径 和 IP地址 * 获取路径和地址 - 获取ServletContext上下文对象 ...

  9. aws EKS EFS storageclass PV PVC Pod

    storageclass [root@localhost specs]# cat storageclass.yaml kind: StorageClass apiVersion: storage.k8 ...

  10. 粗浅聊聊Python装饰器

    浅析装饰器 通常情况下,给一个对象添加新功能有三种方式: 直接给对象所属的类添加方法: 使用组合:(在新类中创建原有类的对象,重复利用已有类的功能) 使用继承:(可以使用现有类的,无需重复编写原有类进 ...