摘要

本文讲解下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. axios全攻略

    随着 vuejs 作者尤雨溪发布消息,不再继续维护vue-resource,并推荐大家使用 axios 开始,axios 被越来越多的人所了解.本来想在网上找找详细攻略,突然发现,axios 的官方文 ...

  2. 【2017年新篇章】 .NET 面试题汇总(二)

    本次给大家介绍的是我收集以及自己个人保存一些.NET面试题第二篇 第一篇文章请到这里:[2017年新篇章] .NET 面试题汇总(一) 简介 此次包含的不止是.NET知识,也包含少许前端知识以及.ne ...

  3. EFcore与动态模型(二)

    上篇文章中介绍了如何使用ef进行动态类型的管理,比如我们定义了ShopDbContext并且注册了动态模型信息,下面的代码实现了动态信息的增加: Type modelType = IRuntimeMo ...

  4. Error: Cannot find module 'gulp-clone'问题的解决

    安装完gulp环境,并且配置好gulpfile.js,执行静态文件压缩和代码混淆时,出现如下错误: Error: Cannot find module 'gulp-clone' Error: Cann ...

  5. .Net Core迁移到MSBuild的多平台编译问题

    一.前言 本篇主要讨论.NET Core应用程序项目结构的主题,重点探索.NET Core应用程序的多平台编译问题,这里指的多平台是指.NET Framework..NET Core App..NET ...

  6. JSP中三种弹出对话框的用法《转》

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  7. Node.js~在linux上的部署~外网不能访问node.js网站的解决方法

    这是上一篇node.js部署到linux上的后续文章,当我们安装完node.js之后,建立了sailsjs的网站,然后在外面电脑上无法访问这个网站,这个问题我们如何去解决? 解决思路: 查看linux ...

  8. Ubuntu下安装Redis并实现远程访问

    之前的一篇随笔写到Redis在Windows下的安装,但目前好多大数据处理的服务是在Linux上的,所以想以Redis为例并实现在Windows上利用C#代码远程访问. 以在Ubuntu下为例,步骤如 ...

  9. 强大的健身软件——Keep

    Keep是一款具有社交属性的健身工具类产品.用户可利用碎片化的时间,随时随地选择适合自己的视频健身课程,进行真人同步训练.完成后还可以"打卡"晒成就.   你可根据器械.部位.难度 ...

  10. Opencv2.4.13 与Visual Studio2013 环境搭建配置

        opencv这个工具来进行图像处理.大致是使用C++语言编写程序实现识别算法的实现,所以首先就要进行opencv与VS环境的配置. Shaine属于那种半路出家之人都算不上的那种,本科期间三四 ...