前言:

介绍基础的git入门级指令,虽然git指令非常多,但是实际工作中,我们会用到的非常少,小项目中甚至只需要用到2、3个。而且大部分人都会采用gui,而不是每次都打开终端然后输一长串难记的指令。

目录

一、简介:

git是一种分布式版本控制系统,与SVN一样都是对一个软件项目进行版本管理的。其托管平台常见的有github,gitlab,不管平台为何,我们开始一个git项目的步骤都是一样。

二、开始使用GIT

一、创建仓库

首先、我们需要有一个仓库,英文就是repository,就是一个软件项目的文件夹,仓库创建完成后,仓库里的所有文件都可以被版本控制到。

一)、如果我们电脑上已经有一个软件项目了,我们要把它变成一个git项目,可以这样:

1.打开git bash,进入到该文件夹的根目录下(mac直接打开终端即可),然后输入指令 git init,回车即可。

git init

回车后,仓库创建完成,终端/git bash里会显示如下信息(初始化完成一个空的仓库):

Last login: Tue Apr 25 01:39:09 on ttys000

tydeMacBook-Pro:gitDemo ty$ git init

Initialized empty Git repository in /Users/ty/Documents/gitDemo/.git/

然后在文件夹里会出现一个隐藏的.git文件夹,有了它,就表示该目录是一个git仓库了。

终端/git bash先别关,下一步要用。

2.将本地仓库放到git托管平台上:也就是创建一个远程仓库并与之联系起来,以github为例:

登录github后,打开右上角的+号,下拉菜单中选创建新仓库:

仓库名字随便填,但一般都取的和本地仓库的名字相同:

填好仓库名字后,点创建按钮,然后将显示创建好的远程仓库信息:

创建完成后,在git bash(mac终端里)输入如下指令,将本地仓库与远程仓库关联起来:

git remote add origin 上图红框中的url,包括前面的协议,两种协议SSH、https都可以,如果你还没有设置ssh,那就只能用https的

3.把本地仓库里的文件提交到远程仓库里:

现在本地仓库里有一个1.txt文件,把它提交到远程仓库里:

指令:

A.将所有有改动的文件添加进来:

git add .

B.提交刚刚添加的文件,并且必须写一句提交信息文本

git commit -m "提交信息,比如说初次提交,初始化项目等等"

C.推送到远程仓库

git push -u origin master

推送成功后,日后再push,直接git push就行了,不需要后面的 -u origin master之类的。

至此,我们已经做完了本地仓库与远程仓库的关联,日后本地仓库有任何文件的改动,都可以用指令:git add .然后git commit - m '信息'然后git push(顺序不能错)来推送最新文件到远程仓库。

二)、如果我们已知一个github上的项目,要弄到自己电脑上搞,比如你刚刚加入的公司项目,它托管在github上(其他git托管平台也一样):

1.肯定你会得到一个远程仓库的地址,https或者ssh。用git clone 指令来搞下来:

git bash (mac终端)进入到你希望下载项目的文件夹里,然后输入指令:

git clone 远程仓库地址

等项目克隆完成后,就可以开始敲代码开始工作啦!推送你改动后的文件到github依旧是3个指令:git add .然后git commit - m '信息'然后git push。

PS:多人开发时,应该每次git push前,先git pull将别人推送的最新代码下到本机,然后再git push推送你的代码到github上。否则你会得到一个报错信息,就是告诉你让你先pull。

二、常用指令详解:

一)、添加有改动的文件:git add

git add .表示添加所有的改动文件

git add filename则是单独添加某一个文件

二)、提交添加的文件:git commit -m "为本次提交写句简易说明吧"

-m 后用引号括起来的文本就是对这次提交做的注释、或者叫标签、简介什么的,其目的就是一眼看出本次提交代码是解决了一个什么问题。虽然没有定性规范一定要写什么,你甚至可以打个省略号都算OK,但是正常开发,建议写一下,方便自己日后看,也方便其他开发者一眼看出这次提交是解决什么问题啥的

三)、推送已提交的文件:git push

推送到远程仓库

四)、拉取指定的远程分支并创建本地分支

拉取指定的远程分支并创建本地分支

git 基础入门操作的更多相关文章

  1. 2.4 Git 基础 - 撤消操作

    2.4 Git 基础 - 撤消操作 撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失 ...

  2. Mysql的二进制安装和基础入门操作

    前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...

  3. Mysql数据库的二进制安装和基础入门操作

    前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...

  4. MySQL数据库的二进制安装、源码编译和基础入门操作

    一.MySQL安装 (1)安装方式: 1 .程序包yum安装 优点:安装快,简单 缺点:定死了各个文件的地方,需要修改里边的相关配置文件,很麻烦 2 .二进制格式的程序包:展开至特定路径,并经过简单配 ...

  5. git基础入门之常用命令操作

    本内容参考:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 初学,有什么不对的地方 ...

  6. 5.Git基础-撤销操作、标签的使用、Git别名

    1.撤销操作 1.1 修改上一次的提交(commit)--  git commit --amend 有时候我们在提交完成之后才发现有几个文件没有提交,或者发现提交信息填写错了,这时候可以使用 git ...

  7. 4 Git 基础 - 撤消操作

    撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失误,就有可能丢失部分工作成果. 修改 ...

  8. Git 基础入门

    目录 git安装 基本设置 创建版本库 相关概念 将代码提交到分支仓库 版本回退 代码修改 撤销修改 文件删除 github 远程仓库 添加远程仓库 克隆远程仓库 分支操作 忽略特殊文件 git安装 ...

  9. git基础-撤销操作

    ---恢复内容开始--- 撤销操作 在任何阶段,你都有可能想要撤销某些操作. 当我们提交完了代码,发现漏掉了几个文件没有添加,后者提交信息写错了,此时,可以运行--amend选项的提交命令尝试重新提交 ...

随机推荐

  1. virtIO之VHOST工作原理简析

    2017-07-19 一.前言 之前有分析过虚拟化环境下virtIO的实现,virtIO相关于传统的虚拟IO在性能方面的确提高了不少,但是按照virtIO虚拟网卡为例,每次虚拟机接收数据包的时候,数据 ...

  2. SaltStack系列(四)之实例编写

    前面已经介绍的够多了,这里来让我们写一些完整的实例来梳理一下. 强调一下,sls文件的抒写格式都是"-"后面跟一个空格,然后后面跟参数: 然后后面再跟一个空格,然后是要填写的值.但 ...

  3. 三、Mosquitto Java 客户端实现

    本文的实现是在 << 一.Mosquitto 介绍&安装>> << 二. Mosquitto 的使用说明 >> 两篇文章搭建好 Mosquitt ...

  4. CentOS7.5基础优化与常用配置

    目录 最小化全新安装CentOS7基础优化 配置yum源 安装常用软件 关闭防火墙 关闭SELinux 优化ulimit 历史命令记录改为1万条 把命令提示符改为绿色 添加vim配置文件 添加一个普通 ...

  5. 异常来自 HRESULT:0x80070057 (E_INVALIDARG)

    莫名其妙的编译总会报错 异常来自 HRESULT:0x80070057 (E_INVALIDARG) 未能加载程序集....... 几次删除引用然后重新引用程序集还是报错 奔溃中.... 网上搜索还真 ...

  6. NodeJS学习笔记六

    Symbol简介 ES6引入了一种新的原始数据类型Symbol,表示独一无二的值.它是JavaScript语言的第七种数据类型,前六种是:Undefined.Null.布尔值(Boolean).字符串 ...

  7. Smarty 模板布局继承

    Smarty 模板继承 在覆盖父模板的{block}块以外的地方, 子模板不能定义任何内容.任何在{block}以外的 内容都会被自动忽略. 在子模板和父模板中的{block}内容,可以通过 appe ...

  8. 5makefile

    makefile编译多个可执行文件1: 多个 C 文件编译成不同的目标文件2: 多个 C 文件编译成 一个目标文件 注意:makefile的文件名的三种形式(优先级排序)makefile>Mak ...

  9. ASP.NET之报表--RDLC(一)---附源码

    听同事介绍到RDLC,之前有了解过报表,但是确实没什么放在心上.最近有空,就研究下了. 一.RDLC实现 1.步骤 (1)首先新建一个项目RDLCDemo (2)新建一个DataSet数据集,并且绑定 ...

  10. python基础学习十 logging模块详细使用【转载】

    很多程序都有记录日志的需求,并且日志中包含的信息既有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,主要用于输出 ...