前言:

介绍基础的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. KVM中断虚拟化浅析

    2017-08-24 今天咱们聊聊KVM中断虚拟化,虚拟机的中断源大致有两种方式,来自于用户空间qemu和来自于KVM内部. 中断虚拟化起始关键在于对中断控制器的虚拟化,中断控制器目前主要有APIC, ...

  2. centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标前所有字符 Ctrl+r 搜索命 hash命令 Ctrl+左箭头/右箭头 cd命令 第三节课

    centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标 ...

  3. python模块之shutil高级文件操作

    简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作.对单个文件的操作也可参见os模块. 注意即便是更高级别的文件复制函数(shutil.co ...

  4. 跟我学Makefile(二)

    命令出错: 每当命令运行完后, make 会检测每个命令的返回码,如果命令返回成功,那么 make 会执行下一条命令. 如果一个规则中的某个命令出错了(命令退出码非零),那么 make 就会终止执行当 ...

  5. What do you think the coming adidas NMD Singapore

    adidas NMD Singapore is surprising everybody with a lot of completely new NMD choices combined with ...

  6. 52. N-Queens II(数个数)

    The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens ...

  7. 机器学习实战python3 K近邻(KNN)算法实现

    台大机器技法跟基石都看完了,但是没有编程一直,现在打算结合周志华的<机器学习>,撸一遍机器学习实战, 原书是python2 的,但是本人感觉python3更好用一些,所以打算用python ...

  8. SQL Server System.Data.SqlClient.SqlException:已成功于服务器建立连接,但是在 登录前的握手期间发生错误

    一.错误描述 错误名称如上.整体错误如下: System.Data.EntityException 基础提供程序在Open上失败--> System.Data.SqlClient.SqlExce ...

  9. bzoj1603 / P2913 [USACO08OCT]车轮旋转Wheel Rotation

    P2913 [USACO08OCT]车轮旋转Wheel Rotation 稳妥起见(防止数据出锅),用了bfs 每次的转移可以直接用异或和解决. #include<iostream> #i ...

  10. Mybatis-plus之RowBounds实现分页查询

    物理分页和逻辑分页 物理分页:直接从数据库中拿出我们需要的数据,例如在Mysql中使用limit. 逻辑分页:从数据库中拿出所有符合要求的数据,然后再从这些数据中拿到我们需要的分页数据. 优缺点 物理 ...