git使用笔记(六)github
By francis_hao Nov 20,2016
github介绍
github是一个网站https://github.com/,可以实现基于git(当然,svn也是可以的)的代码托管工作。我们可以在任何有网络的地方将自己的代码放到这个网站上供自己和别人下载,当然如果你不想让别人下载,也可以放在私人仓库里,不过这是需要收费的。
先有鸡后有蛋
创建仓库
当我们有一个项目需求时,首先在github上新建一个仓库。

进行基本的说明,比如我想学习一门语言,并想用C程序进行记录学习过程。其配置过程如下,其中第3步的选择会在仓库中生成两个文件,一个是对项目的简单介绍,内容就是第2步中的内容,另一个是你写的程序遵循的协议说明,我选择GPLv3。

创建后的内容

下载仓库到本地,修改并上传
有两种方式:SSH和HTTPS,官方推荐的是HTTPS.
HTTPS方式

具体的操作如下,首先复制HTTPS URL.

现在就可以使用git的clone命令下载了
$ git clone https://github.com/yinghao-liu/language.git

当然你也可以指定自己的路径名
$ git clone https://github.com/yinghao-liu/language.git hello

在目录下编写文件并编译,生成的可执行文件如果不想提交到git中可以在.git/info/exclude文件中添加规则将它忽略掉,之后就是add和commit了。

接下来就可以将本的的分支推送到github上了,过程中需要输入github上的用户名和密码
$ git push origin master:master

已经成功push上去了

SSH方式

这种方式的优点是在与服务器通信的时候只要输入一个口令即可,但是前提是必须有一个密钥,在本地生成一个并在github上配置。具体过程如下
查看本地是否存在密钥

不存在则生成一个,过程中需要输入两次口令

之后则是在github网站上进行配置,这里直接贴了github help页的内容

在github上复制SSH的URL,并在本地进行git clone,下面是两次clone的过程,第一次需要配置github到已知主机上并输入之前设置的口令,以后只输入口令就可以了。
git clone git@github.com:yinghao-liu/language.git lang_ssh

修改main.c文件并push到github上

可以在github上看到这次的修改

先有蛋后有鸡
当我们先在本地创建了一个项目,之后想放到github上。
首先,本地有个提交过的版本库

然后,新建一个含有README.md,LICENSE的github仓库。

将本地版本库和新建的github版本库进行关联,其中origin为自定义的远程主机名
$ git remote add origin https://github.com/yinghao-liu/test.git
将github版本库里的文件先取下来
$ git fetch origin


合并远程主机的分支到本地当前分支
$ git merge remotes/origin/master -m "merge from remote master"

将合并后的分支推送到github上
$ git push origin master:master

github上已经有本地的文件了

附注
若推送时候省略参数的形式,会出现提示
$ git push

这里有两种模式,设置方式如上图
simple:默认只推送当前分支(git 2.0版本之后默认的方式)
matching:推送所有有追踪关系的本地分支(git 2.0版本之前默认的方式)
设置默认推送方式之后仍然有问题

需要设置当前分支相关联的远程分支,下例为将本地当前分支关联到远程主机origin的master分支(也就是建立追踪关系)
$ git push –u/--set-upstream origin master


本文由 刘英皓 创作,采用 知识共享 署名-非商业性使用-相同方式共享 3.0 中国大陆 许可协议进行许可。欢迎转载,请注明出处:
转载自:http://www.cnblogs.com/yinghao1991/p/6083870.html
参考
[1] CSDN :http://blog.csdn.net/u012575819/article/details/50553501 git clone,push,pull,fetch命令详解
[2] gihub :https://help.github.com/ help页
[3]sitepoint: https://www.sitepoint.com/getting-started-git-team-environment/ Getting Started with Git in a Team Environment
git使用笔记(六)github的更多相关文章
- Git学习笔记-----下载GitHub上某个分支的代码
在GitHub上的仓库里,往往建有几个分支,如果只是想下载某个分支的代码,怎么办呢? 1.需要知道远程分支的名称,及远程分支所在的Git仓库 2.按下面指令下载 git clone -b 远程分支名称 ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- git 学习笔记6--remote & log
git 学习笔记6--remote & log 创建SSH Keys ssh-keygen -t rsa -C "1050244110@qq.com" 本地关联远程 git ...
- 《Pro Git》笔记3:分支基本操作
<Pro Git>笔记3:Git分支基本操作 分支使多线开发和合并非常容易.Git的分支就是一个指向提交对象的可变指针,极其轻量.Git的默认分支为master. 1.Git数据存储结构和 ...
- git使用笔记(三)(图文说明) 图解提交更改内容的不同方式,涉及代码
此步之前的工作和示例请参考以下帖子: git使用笔记(一)Git的下载与配置 git使用笔记(二) 如何把GitHub上项目同步到本地 -------------------------------- ...
- git入门笔记汇总——(廖雪峰博客git入门)
本文内容是对廖雪峰老师Git教程做的笔记,外加一些自己的学习心得,还抱着学以致用的心态来实践一番 如有显示错误 请移步本人github:git教程小结 Git学习笔记 Git简介 安装Git 创建版本 ...
- Git 安装及用法 github 代码发布 gitlab私有仓库的搭建
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 这个版本控制软件,有 svn还有git,是一个工具. git是由linux的作者开发的 git是一个分布式版本控制系统 ...
- 【转帖】Git学习笔记 记录一下
本文内容参考了廖雪峰老师的博文,并做了适当整理,方便大家查阅. 原帖地址 https://wangfanggang.com/Git/git/ 常用命令 仓库初始化 - git init 1 git i ...
随机推荐
- python3 练习题100例 (二十一)打印一定范围内的水仙花数
题目内容: 水仙花数是指一个n位数 (n≥3),它的每个位上的数字的n次幂之和等于它本身. 例如:153是一个“水仙花数”,因为 153 是个 3位数,而1**3+5**3+3**3==153. 输入 ...
- QOS-QOS(服务质量)概述
QOS-QOS(服务质量)概述 2018年7月7日 20:29 概述及背景: 1. 引入: 传统IP网络仅提供“尽力而为”的传输服务,网络有可用资源就转发,资源不足时就丢弃 新一代IP网络承载了 ...
- Matplotlib 图表的样式参数
1. import numpy as np import pandas as pd import matplotlib.pyplot as plt % matplotlib inline # 导入相关 ...
- Spring BindingResult验证框架Validation特殊用法
使用注解@Valid(实体属性校验) Springboot实现 Spring实现 一.准备校验时使用的JAR validation-api-1.0.0.GA.jar:JDK的接口: hibernate ...
- 如何将h5网页改成微信网页
1.如何将h5网页改成微信网页 1.设置安全域名 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”. 备注:登录后可在“开发者中心”查看对 ...
- 【Keras案例学习】 sklearn包装器使用示范(mnist_sklearn_wrapper)
import numpy as np from keras.datasets import mnist from keras.models import Sequential from keras.l ...
- 一些可能有点用处的C#开发经验
前言: 下个月就要去进行Java开发了,以后C#碰的就少了(可惜去年买了三本C#的书,几乎还是全新的……),平时一些经验都记在OneNote里面,现在收集整理出来,因为只能利用交接工作的打酱油的时间, ...
- C变量之间的转换
int main(){ //定义了三个变量分别是abc ab的值分别是5跟8 c没有赋值 把b的值给c 把a的值给b 把c的值给a 形成了一个ab值得转换: int a=5; int b=8; in ...
- drf 缓存扩展
drf缓存给了一个非常方便的扩展,使用起来相当方便 1- 安装 pip install drf-extensions 2-配置 在settings里面增加两项配置 # drf扩展REST_FRAM ...
- Mac下安装pear库+phpDocumentor
1. 首先安装pear: curl -o go-pear.php https://pear.php.net/go-pear.phar 看见这个就安装OK: % Total % Received % X ...