安装

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学习笔记的更多相关文章

  1. Github学习笔记-不定时更新

    最近在搞一个外包项目,有个非常厉害的师兄带我,他写后端,我负责前端部分,项目合作需要用到github,这也是早晚要接触,记录下项目过程中对github/git使用的学习笔记. 1.在网上看了一些教程之 ...

  2. HIT2019春软件构造->Git&Github学习笔记

    由于软件构造课程需要,学习使用git,以下作为学习笔记. 一.Git初始化及仓库创建和操作  1.基本信息设置(设置签名)  命令        项目级别/仓库级别:仅在当前本地库范围内有效 git ...

  3. git/github学习笔记

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

  4. github 学习笔记【一】

    这几天在学习github ,其实学了主要用来管理自己的项目!因为要在家里和公司两头做! 所以就开始学习使用!目前熟练几个命令,其他的一边用一遍学吧!想一举成功应该是不太可能的! 反复记忆才能更好,据说 ...

  5. eclipse使用git及github学习笔记

    项目托管 1.首先需要在github上建立一个远端仓库  点击Create repository后,会在github上建立相应的git仓库,并会出现如下界面: 复制https或者ssh的仓库地址,远端 ...

  6. Git与GitHub学习笔记(七)Windows 配置Github ssh key

    前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...

  7. Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件

    一.Git提供了文件忽略功能.当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪 HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件 问题:最近 ...

  8. Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上

    前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...

  9. GitHub学习笔记:分支管理

    GitHub对于每个开发版本都需要有一个分支,默认的分支是master往往被大家保留下来作为主分支,分支类似于进程的一个指针,往往在master这个稳定的主干版本上分出一个或多个正在开发的分支版本,开 ...

随机推荐

  1. Node.js模块os

    OS 操作系统模块 os.hostname() 操作系统的主机名. os.type() 操作系统的名称 os.release() 操作系统的发行版本 os.uptime() 当前系统的时间 以秒为 o ...

  2. sql update left join 更新,字段内容分隔符提取

    UPDATE a SET [Province] = parsename(replace([FullName],'-','.'),2) from [dbo].[T_B_Emp] a left join ...

  3. iOS NSMutableURLRequest 上传图片

    - (void)postImage:(UIImage *)_image { //分界线的标识符 NSString *TWITTERFON_FORM_BOUNDARY = @"AaB03x&q ...

  4. Objective-c 字典对象

    oc 中的 NSDictionary 的作用同 java 中的字典类相同,提供了 “键-值”对的组合.比如,是用字典类实现对学生姓名和学号的存放,编号是一个键(唯一性),姓名是值.它的方法有: 下面通 ...

  5. C++ : 类型的别名和对象的别名

    #include <iostream>using namespace std; class human{public:    void Talk();    ~human(){cout&l ...

  6. UVa 11082 Matrix Decompressing(最大流)

    不想吐槽了..sample input 和sample output 完全对不上...调了一个晚上...不想说什么了... -------------------------------------- ...

  7. beanUtils操作bean的属性

    beanUtils操纵bean属性: 需要jar包commons-beanutils-x.x.x.jar    同时commons-beanutils-x.x.x.jar需要commons-loggi ...

  8. Linux内核学习笔记-2.进程管理

    原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...

  9. Android 开发笔记 “android调试遇到ADB server didn't ACK以及顽固的sjk_daemon进程 ”

    资源来源:http://blog.csdn.net/wangdong20/article/details/20839533 做Android调试的时候经常会遇到,程序写好了,准备接上手机调试,可不一会 ...

  10. QT4/QT5设置界面风格(QT4支持更多的Windows界面风格)

    #include "mainwindow.h" #include <QApplication> #include <QTextCodec> #include ...