git&github

什么是GIT

  • 是一个源代码管理工具

  • 源代码为什么要管理起来?

    • 你写的东西就叫源代码,第三方的库和框架都不算。

  • 让源代码可以被追溯,主要记录每次变更了什么,谁主导这次变化。

  • 人为的维护比较麻烦。

  • 便于版本的迭代

  • GIT是Linux之父当年为了维护管理Linux的源代码写的一个工具

  • Git 之前 很多使用 svn vss tfs hs ......

  • github里所有项目都是用git管理的,所以前端必须掌握。

GIT安装

  • linux&mac都不需要安装,系统内置。

  • window需要下载 portableGit,并配置环境变量。

    • git工具下载

    • 下载完解压到环境变量,配置GIT_HOME

    • 要全局使用的git.exe在bin文件夹里面,所以放到PATH中的应该是

    • PATH = %GIT_HOME%/bin
    • $ git --version  //安装后可以查看版本
    • git的可视化工具

    • 下载后一直下一步就好了

GIT命令操作

$ git init
// 初始化一个本地的仓库就是在本地文件夹中添加了一个.git的文件夹用于记录所有的项目变更信息
$ git status
//查看本地仓储的变更状态
//用于查看本地仓储的状态,第一次查看,显示的是一坨没有被跟踪的文件.

$ git status -s
// -s 是输出简要的变更日志

$ git add
$ git add --all
//添加本地暂存(托管)文件 add+文件名
//可以将一个/所有没有被跟踪的文件添加到跟踪列表

类似于node_modules这种性质的文件是不应该被跟踪

  • 添加本地GIT忽略清单文件

    • 在代码库文件夹的根目录添加一个.gitignore文件

    • 此文件用于说明忽略的文件有哪些

    • 比如写上:node_modules  直接写文件名就忽略了

  • 提交被托管的文件变化到本地仓储

  • git commit

    • 将本地的变化提交的本地的仓库文件夹归档

    • 一般在有了一个小单元的整体变化后再提交

    • $ git commit -m '第一次提交'
      • 必须写-m 后面加版本信息,git要求必须有提交日志

  • 对比两个版本之间的差异

    • git diff

    • 可以用于对比当前状态和版本库中状态的变化

  • 查看提交日志

    • git log

    • 可以查看提交日志

  • 回归到指定版本

    • git reset --hard加哈希值前六位

  • 其他所有的命令都可以通过 git help查看

  • 为仓储添加远端(服务器端)地址

  • 将本地仓储的提交记录推送到远端的master分支

  • 拉取远端master分支的更新记录到本地

GITHUB

就是一个git服务器提供商

全球最大同性交友网站

社交化编程

官网

  1. 功能

    • 托管开源的项目都是免费的

    • 那么闭源的肯定就收费了,贵的一p

  2. 如何使用

    • 注册,有邮箱就行。

    • 按着步骤走创建一个空的免费仓库

    • 在code的那一栏会出现教你用git提交代码的教程

  3. 初体验

    • cd到你的git仓库。

    • 执行

      • git init
        git add --all
        get commit -m "提交一次代码"
      • 接下来就可以将这个git仓库链接github

    • 仓库的地址复制下来,通过git命令绑定远端地址

      • git remote add origin http://你的仓库地址
      • git remore add 远端仓库的别名 github仓库的地址

      • 完成后再 git remote一次就会看到有一个origin仓库创建出来

      • git push -u origin master
        // push -u是为了传输的更快 master 是主分支的意思
      • 通过push推送到github仓库

    • 接下来会让你输入github的用户名和密码

    • 这步之后就可以在github页面中看到你commit的内容了。

      • 从远端拉仓库过来

      • git pull origin master   //回车
      • 可以获取github远端仓库的文件,不用用户名密码。

  4. Gist

    • github导航栏中

    • 可以记录一些常用的代码片段,并且发布到github共享。

    • 你也可以在上面搜索别人的一些好代码

    • 现在需要FQ了

  5. 通过github创建博客

  • git branch //查看当前版本的分支
    git branch gh-pages //新建一个叫gh-pages 的分支
    git checkout gh-pages //切换到gh-pages的分支
    git push -u origin gh-pages//将这个仓库推送到远端地址
  • 输入用户名密码,这样github就有两个仓库了。

    • gh-pages是github上一个特殊的分支

    • 通过这个分支可以在网上搭建一个网页,直接预览。

  • 创建好gh-pages仓库后,通过网络直接预览

  • 自己的github名字.github.io/项目名称

    • 我的地址

    • 上面只是随便放了个静态网页

    • 下面介绍一款博客工具

  1. HEXO

    • 官网

    • 作用

      • 方便的搭建一个个人博客

    • 安装

      • $ npm install hexo-cli -g
    • 命令

      • $ hexo init 博客名称(blog)   // 初始化
      • 会给你创建一个叫blog的文件夹,包含三个目录

        • themes(主题,你可以下载官网的各种主题)

        • source (我们写的文章,md文件)

        • scaffolds(脚手架,不要管它)

      • cd 到 blog文件夹

      • $ npm install //下载它需要的包
        $ hexo serve //打开4000端口
      • 接下来就可以在localhost访问这个博客了

      • 要放到github上需要生成一个静态页

        • $ hexo generate
        • 生成好的页面在public文件夹中

        • 将这一整个文件和github文件绑定

Git&Github介绍的更多相关文章

  1. GitHub的SSH key配置以及常用的git命令介绍

    一. GitHub的SSH key配置 (以windows为例,Mac iOS系统类似) SSH Key 是一种方法来确定受信任的计算机,从而实现免密码登录.Git是分布式的代码管理工具,远程的代码管 ...

  2. git &github 快速入门

    本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...

  3. git/github学习笔记

    郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...

  4. Git/GitHub 初用体验与总结

    Git,一个神奇而又陌生的东西,居然到现在才去了解它,就像有一位仁兄说的,现在不会用Git真的都不好意思说自己搞IT的. 简单的讲,这Git是目前最先进的分布式版本控制系统,和他相对应的就是众所周知的 ...

  5. Git & Github 一页简明笔记

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...

  6. git/github 使用

    原文:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html git/github学习笔记 Posted on 2011-08-25 2 ...

  7. git使用介绍

    Git简单介绍 参考网址: git使用简介 这个教程推荐使用:git教程 git和svn的差异 git和svn的最大差异在于git是分布式的管理方式而svn是集中式的管理方式.如果不习惯用代码管理工具 ...

  8. [git] github 使用简单记录

    前提 :1. 已有 github 账号.2. 已安装 git .3. 在 github 和 本地 git 客户端交互秘钥.(这步我记得需要做,有点久远,不确定.) 正文: 下面是一个简单的例子.先在 ...

  9. Git & Github 一页简明笔记(转)main

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解. 0. 常用命令一览 ...

随机推荐

  1. [IOI2005]mea

    IOI 读完题,感觉这个题并不是很难,那我是不是可以去IOI了: 最先考虑暴力,发现完全行不通,所以,我们考虑其他方法.突然发现:其实在确定 \(s_1\) 的时候,整个序列就可以确定了,所以我们考虑 ...

  2. intouch与PLC之间通讯状态监测和设置

    intouch与PLC进行通讯状态监测中,一般做法需要PLC来实施主动脉冲计数,或者bool变化来实现.本文通过上位机自带参数设置,实现对intouch通讯状态监视,将画面恢复初始状态,并及时弹窗报警 ...

  3. Intouch/ifix语音报警系统制作(3-利用自定义过程和函数,重构先前版本)

    在语音模块嵌入了半年左右的时间,经过实际使用发现,代码冗余,重复太多,维护较难,新增也不易,故而对整个框架进行整理,实现简单添加,维护容易的目的. 1.代码优化 1.1构建自定义过程 name 参数代 ...

  4. centos 7 网络静态IP配置文件

    TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=staticIPADDR=10.86.128.160GETWAY=10.86.128.1P ...

  5. CSS中content属性的妙用

    前言 本文讲解CSS中使用频率并不高的content属性,通过多个实用的案例,带你由浅入深的掌握content的用法,让代码变得更加简洁.高效. 定义 W3school中这样定义: content 属 ...

  6. 未知高度-纯css实现水平垂直居中

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 网安日记④之搭建域环境(domain)并且配置域

    搭建域环境(domain)并且配置域 什么是域 域就是将多台计算机在逻辑上组织到一起,进行集中管理,也就是创建在域控制器上的组,将组的账户信息保存在活动目录中.域组可以用来控制域内任何一台计算机资源的 ...

  8. 年薪60W的Android程序员究竟多累、多苦?一条高赞评论扎了无数人的心

    为啥经常听到程序员朋友说自己太辛苦了.太累了,其实原因很简单:干活苦.竞争大.技术致富难. 干活苦: 有新闻说晚上十点某领导在微信群要求下属在十分钟内回复,一员工因休息早而没及时回复被裁了. 对于程序 ...

  9. 算法竞赛中的常用JAVA API:PriorityQueue(优先队列)(转载)

    算法竞赛中的常用JAVA API:PriorityQueue(优先队列) PriorityQueue 翻译过来就是优先队列,本质是一个堆, 默认情况下堆顶每次都保留最小值,每插入一个元素,仍动态维护堆 ...

  10. 老杜告诉你java小白到大神是怎么炼成的(转载)

    老杜告诉你java小白到大神是怎么炼成的 1. 学习前的准备 一个好的学习方法(应该怎么学习更高效): 一个合格的程序员应该具备两个能力 有一个很好的指法速度(敲代码快) 有一个很好的编程思想(编程思 ...