GitHub学习笔记
安装
Ubuntu上安装Git
sudo apt-get install git
Windows上安装Git
msysgit是Windows版的Git。从http://msysgit.github.io/下载,然后按默认选项安装就可以。安装完毕后,在開始菜单里找到”Git”|”Git Bash”,蹦出一个相似命令行窗体的东西,就说明Git成功安装!
配置
打开命令行。输入例如以下代码:
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR EMAIL ADDRESS"
注意git config命令的--global參数。用了这个參数,表示你这台机器上全部的Git仓库都会使用这个配置,当然也能够对某个仓库指定不同的username和Email地址。
创建仓库
- 点击GitHub页面右上角的“+”,然后点击“New repository”。
- 输入仓库的名称及其描写叙述信息。
- 选择仓库是公开的还是私有的(仅仅同意付费用户创建)。
- 选择”Initialize this repository with a README.”。
- 点击”Create repository”。
也可从命令行输入例如以下语句:
mkdir repoName
cd repoName
git init
提交更新
- 在仓库的文件列表点击”README.md”。
- 点击编辑button,对文件作出改动,文件内容上方有预览button能够预览改动效果。
- 在”Commit changges”下方输入简单的有意义的更新信息。
- 点击”Commit changes”。
最后一步除了”Commit changes”之外还有” Create a new branch for this commit and start a pull request”选项,能够用此选项创建一个pull request。管理员就可以点击”Merge pull request”合并结果。
假设从命令行合并。过程例如以下:
Step 1: From your project repository, bring in the changes and test.
git fetch origin
git checkout -b chinaeagle001-patch-1 origin/chinaeagle001-patch-1
git merge master
Step 2: Merge the changes and update on GitHub.
git checkout master
git merge --no-ff chinaeagle001-patch-1
git push origin master
Fork A Repo
创建分支的样例
- On GitHub, navigate to the octocat/Spoon-Knife repository.
- Fork buttonIn the top-right corner of the page, click Fork.
同步分支
创建分支的本地克隆。
- 在GitHub页面,导航到你的分支,复制分支的URL。
- 打开命令行。输入:
git clone https://github.com/YOUR-USERNAME/Spoon-Knife。 - 回车,本地克隆创建完毕。
配置Git使分支与原始的仓库同步
- On GitHub, navigate to the octocat/Spoon-Knife repository.
- 复制原始仓库的URL。
在命令行输入
git remote -v并点击回车。能够看到当前配置的你的分支的远程仓库。git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)输入
git remote add upstream。然后粘贴复制的URL并点击回车。
git remote add upstream https://github.com/octocat/Spoon-Knife.git- 此时,再次输入
git remote -v,能够看到例如以下信息:
git remote -v
# origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
# origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
# upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
# upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
如今,就能够通过少量的Git命令使分支与原始仓库同步。
git fetch upstream
git checkout master
git merge upstream/master
The sky’s the limit with the changes you can make to a fork, including:
- Creating branches: Branches allow you to build new features or test out ideas without putting your main project at risk.
- Opening pull requests: If you are hoping to contribute back to the original repository, you can send a request to the original author to pull your fork into their repository by submitting a pull request.
GitHub学习笔记的更多相关文章
- Github学习笔记-不定时更新
最近在搞一个外包项目,有个非常厉害的师兄带我,他写后端,我负责前端部分,项目合作需要用到github,这也是早晚要接触,记录下项目过程中对github/git使用的学习笔记. 1.在网上看了一些教程之 ...
- HIT2019春软件构造->Git&Github学习笔记
由于软件构造课程需要,学习使用git,以下作为学习笔记. 一.Git初始化及仓库创建和操作 1.基本信息设置(设置签名) 命令 项目级别/仓库级别:仅在当前本地库范围内有效 git ...
- git/github学习笔记
郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...
- github 学习笔记【一】
这几天在学习github ,其实学了主要用来管理自己的项目!因为要在家里和公司两头做! 所以就开始学习使用!目前熟练几个命令,其他的一边用一遍学吧!想一举成功应该是不太可能的! 反复记忆才能更好,据说 ...
- eclipse使用git及github学习笔记
项目托管 1.首先需要在github上建立一个远端仓库 点击Create repository后,会在github上建立相应的git仓库,并会出现如下界面: 复制https或者ssh的仓库地址,远端 ...
- Git与GitHub学习笔记(七)Windows 配置Github ssh key
前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...
- Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件
一.Git提供了文件忽略功能.当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪 HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件 问题:最近 ...
- Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上
前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...
- GitHub学习笔记:分支管理
GitHub对于每个开发版本都需要有一个分支,默认的分支是master往往被大家保留下来作为主分支,分支类似于进程的一个指针,往往在master这个稳定的主干版本上分出一个或多个正在开发的分支版本,开 ...
随机推荐
- Node.js模块os
OS 操作系统模块 os.hostname() 操作系统的主机名. os.type() 操作系统的名称 os.release() 操作系统的发行版本 os.uptime() 当前系统的时间 以秒为 o ...
- sql update left join 更新,字段内容分隔符提取
UPDATE a SET [Province] = parsename(replace([FullName],'-','.'),2) from [dbo].[T_B_Emp] a left join ...
- iOS NSMutableURLRequest 上传图片
- (void)postImage:(UIImage *)_image { //分界线的标识符 NSString *TWITTERFON_FORM_BOUNDARY = @"AaB03x&q ...
- Objective-c 字典对象
oc 中的 NSDictionary 的作用同 java 中的字典类相同,提供了 “键-值”对的组合.比如,是用字典类实现对学生姓名和学号的存放,编号是一个键(唯一性),姓名是值.它的方法有: 下面通 ...
- C++ : 类型的别名和对象的别名
#include <iostream>using namespace std; class human{public: void Talk(); ~human(){cout&l ...
- UVa 11082 Matrix Decompressing(最大流)
不想吐槽了..sample input 和sample output 完全对不上...调了一个晚上...不想说什么了... -------------------------------------- ...
- beanUtils操作bean的属性
beanUtils操纵bean属性: 需要jar包commons-beanutils-x.x.x.jar 同时commons-beanutils-x.x.x.jar需要commons-loggi ...
- Linux内核学习笔记-2.进程管理
原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...
- Android 开发笔记 “android调试遇到ADB server didn't ACK以及顽固的sjk_daemon进程 ”
资源来源:http://blog.csdn.net/wangdong20/article/details/20839533 做Android调试的时候经常会遇到,程序写好了,准备接上手机调试,可不一会 ...
- QT4/QT5设置界面风格(QT4支持更多的Windows界面风格)
#include "mainwindow.h" #include <QApplication> #include <QTextCodec> #include ...