摘要

本文讲解下Git的使用,包括使用Git上传项目工程到Github,文末有彩蛋哦。

1.安装Git

使用apt-get安

sudo apt-get update

sudo apt-get install git

使用下载安装

1、安装依赖库:

sudo apt-get update

sudo apt-get install build-essential libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip

2、下载:

wget https://github.com/git/git/archive/v1.9.2.zip

-O git.zip

unzip git.zip

cd git-*

3、 安装:

make prefix=/usr/local all

sudo make prefix=/usr/local install

4、 更新:

make prefix=/usr/local all

sudo make prefix=/usr/local install

2.使用Git

1. 创建版本库repository

在想要上传的工程目录下,初始化该目录:

git init

2. 将文件提交到仓库,分两步

$git add filename
$git commit -m "your log"

1、git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。

2、全部增加 git add .

为什么分两步呢?

请看下图,工作区就是你刚刚git init的文件夹, 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区。



所以上述提交文件的两步:

第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

3. 分支管理

Git鼓励大量使用分支,实际上我们在开发一个项目时,如果只用一条分支存放我们所有的开发过程版本与上线版本,显然是管理混乱的,所以正常情况下,master上应该只存放发布上线的版本,而我们的开发过程中的中间版本则是存放在另外一条分支上,当需要发布上线时,再讲其合并到master上。下面是分支管理常用的命令

//查看分支:
git branch //创建分支:
git branch <name> //切换分支:
git checkout <name> //创建+切换分支:
git checkout -b <name> //合并某分支到当前分支:
git merge <name> //删除分支:
git branch -d <name>

当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。

实际工作时,我们往往是在自己电脑上编写程序,然后上传到远程分支上,所以工作流程如下:

  • 首先,可以试图用git push origin branch-name推送自己的修改;

  • 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

  • 如果合并有冲突,则解决冲突,并在本地提交;

  • 没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

git fetch和git pull的区别

  1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge
  2. git pull:相当于是从远程获取最新版本并merge到本地

3.使用Github

作为全球最大的同性交友网站的Github,实际是为大家提供了一个开源库管理的平台,其实就等于提供平台存放上节所述的远程分支,只不过这个分支不仅项目组的人可以看到,全世界的人都可以看到。所以也很方便用于大家共同开发项目。那么怎么使用Github呢?首先,当然是先去Github网站注册。接下来本地操作如下

1. 配置Github的个人信息

git config --global user.name "Your Name" #名字随意

git config --global user.email "youremail@gmail.com"

2. 查看配置信息和编辑:

//查看:

git config --list

//编辑配置信息:

sudo vim ~/.gitconfig

//可以修改的地方

[user]

       name = Your Name

       email = youremail@domain.com

3.创建公钥:

ssh-keygen -C 'you email address@gmail.com' -t rsa   //会在 用户目录 ~/.ssh/ 下建立相应的密钥文件

//上传公钥

在 github.com 的界面中 选择右上角的 Account Settings,然后选择 SSH Public Keys ,选择新加。

Title 可以随便命名,Key 的内容拷贝自 ~/.ssh/id_rsa.pub 中的内容,完成后,可以再使用

//测试:

ssh -v git@github.com

会返回提示信息:

Hi rong0o! You've successfully authenticated, but GitHub does not provide shell access.

4.提交到Github:

使用下面步骤前,应先按第二节所述建好本地库,并将文件提交到本地库 。同时在github上新建个仓库,比如:test.git

//建立远程分支:第一次需要做

git remote add origin https://github.com/rong0o/test.git

#https://github.com/wpeace1212/BlogSource.git 为你的工程url

//查看远程分支:

git remote -v

//提交你的代码:第二次提交时只要执行这条语句:

git push origin master

4.利用Github展示demo

作为一名前端攻城狮,我们学习的过程中需要写一些demo练练手,那么,当我们对我们的demo比较满意,想展示给别人看,确苦于不知如何搭建服务器的时候,怎么办呢?别急,我们有Github!接下来讲解如何用Github展示我们的demo。

1.在Github上传好代码,具体操作参考上一节

2.在Github新建gh-pages分支,便捷操作如下图,输入gh-pages然后回车即可

3.找到setting,在里面找到Github Pages选项,选中gh-pages branch,然后save



4.快去看看你的作品吧

通过 http://github名.github.io/仓库名/,就可以访问你的demo了,但是,注意了:这样访问的话,你的demo根目录下必须有index.html作为入口文件,如果你只想展示某个单独的页面的话,那就在URL后面指定文件名,如下[http://github名.github.io/仓库名/文件名]

5.觉得很有用的一张图

更多前端技术文章,欢迎访问我的博客:嵘么么的个人博客

Git与Github的使用学习的更多相关文章

  1. Git、Github、Gitkraken 学习笔记

    <Git.Github.Gitkraken 学习笔记> 一.写在前面 1.参考资料 本文参考 <Pro Git> 一书. 在官网有免费在线版可供阅读:https://git-s ...

  2. git与github建立链接(学习笔记)

    总结步骤: 1.将所有文件添加到本库 git add . 2. git commit -m "提示信息随便写" 3.查看git修改状态 git status 4.获取远程库与本地同 ...

  3. Git 一些关于 Git、Github 的学习资源

    一些关于 Git.Github 的学习资源 昨天浏览 Github 的是时候发现了 Githug 这个游戏,这个游戏用来帮助菜鸟们学习使用 Git 的. Githug is designed to g ...

  4. git与github学习

    一 我的Github 我的Github项目地址:https://github.com/lllmathison/hello 二 对github与git的学习.感受 git是一个版本管理工具,在本地使用的 ...

  5. 使用git和github管理自己的项目---基础操作学习[转]

    原文: https://segmentfault.com/a/1190000003728094 我是通过看廖雪峰的git教程学习的,真的是极好的,以下是我学习过程中的总结,记录下来,方便自己参考以熟悉 ...

  6. git 和 github的学习

    第一部分:我的github地址 https://github.com/Ly1235/gitLeaming 第二部分:git 和 github Git是一款免费.开源的分布式版本控制系统.gitHub是 ...

  7. Git和GitHub在线学习资源整理

    电子书 GotGitHub Git Workflow 沉浸式学习Git 文章 GitHub Fundamental visual-git-guide 图形化的Git参考手册 Linux下使用git命令 ...

  8. Git-it:一个学习Git和Github的教程(软件)

    Git-it https://github.com/jlord/git-it 2016-08-01 在FreeCodeCamp的引导下了解到的Git-it.OSC有收录. Git-it是一个指导使用G ...

  9. xcode6 cocos2dx开玩笑git和github学习记录

    1. git Xcode4开始,它一直Git作为一个内置的源代码控制(Source Control)工具,所以对于新项目的用途git要管理非常方便.在新建项目向导.可以直接选择Git作为源控制工具.项 ...

随机推荐

  1. 读书笔记 effective c++ Item 24 如果函数的所有参数都需要类型转换,将其声明成非成员函数

    1. 将需要隐式类型转换的函数声明为成员函数会出现问题 使类支持隐式转换是一个坏的想法.当然也有例外的情况,最常见的一个例子就是数值类型.举个例子,如果你设计一个表示有理数的类,允许从整型到有理数的隐 ...

  2. Tinychatserver: 一个简易的命令行群聊程序

    这是学习网络编程后写的一个练手的小程序,可以帮助复习socket,I/O复用,非阻塞I/O等知识点. 通过回顾写的过程中遇到的问题的形式记录程序的关键点,最后给出完整程序代码. 0. 功能 编写一个简 ...

  3. ERP实施顾问工作中应努力做到哪些?

    1.树立并分享信誉 准确的为自己定位,并积极树立自己的信誉.从这样两个角度去考虑问题,一是从高层管理者的角度去思考行业竞争和公司运作的问题,一是从专业.细致的角度去考虑单据.报表.界面等数据处理的问题 ...

  4. MySQL之乱码问题解决详解

    今天在写一个项目的时候,在数据库中手动插入数据不会产生中文乱码,但是通过javaWeb却出现乱码,把提交表单和响应中的乱码问题解决后,还是乱码.所以我锁定一定是我的mysql数据库中出现了乱码的现象.

  5. Eclipse标准版安装J2EE插件

    WTP 使用Eclipse IDE for Java EE Developers是非常方便,但是太大,我喜欢按需配置.首先我们来了解什么是WTP. WTP(Web Tools Platform )项目 ...

  6. mybatis基础,mybatis核心配置文件properties元素

    peroperties元素 可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递 为dataSource元素配置 <proper ...

  7. Troubleshooting OpenStack Bug- 每天5分钟玩转 OpenStack(162)

    这是 OpenStack 实施经验分享系列的第 12 篇. 问题描述 客户报告了一个问题:对 instance 执行 migrate 操作,几个小时了一直无法完成,不太正常. 问题分析 遇到这种情况, ...

  8. CLR查找和加载程序集的方式(二) 流程图

    在前一篇文章<CLR查找和加载程序集的方式(一)>中详细介绍了CLR查找和加载程序的方式,分别介绍了配置与代码的实现方式. 本篇通过一个具体的流程图来帮助大家更加直观明了深入的掌握CLR查 ...

  9. java解析上传的excel

    file是一个File,是一个excel文件 得到文件流:InputStream in =  file.getInputStream() 需要引入的类 import jxl.Cell;import j ...

  10. Vue学习之路---No.5(分享心得,欢迎批评指正)

    同样,首先我们还是回顾一下昨天讲到的东西: 1.常用的Vue修饰器 2.当利用js方法不修改数据,但也可以改变视图时,我们需要整体返回再整体接收 (如: items.example1 = items. ...