GitHub指南
1.创建新仓库
#创建新文件夹,打开,然后执行
git init
#以创建新的 git 仓库。
2.检出仓库
#执行如下命令以创建一个本地仓库的克隆版本:
git clone /path/to/repository #如果是远端服务器上的仓库,你的命令会是这个样子:
git clone username@host:/path/to/repository
3.工作流
#你的本地仓库由 git 维护的三棵“树”组成。
#第一个是你的 工作目录,它持有实际文件;
#第二个是 暂存区(Index),它像个缓存区域,临时保存你的改动;
#最后是 HEAD,它指向你最后一次提交的结果。
4.添加和提交
#你可以提出更改(把它们添加到暂存区),使用如下命令:
git add <filename>
git add *
#这是 git 基本工作流程的第一步;使用如下命令以实际提交改动:
git commit -m "代码提交信息"
#现在,你的改动已经提交到了 HEAD,但是还没到你的远端仓库。
5.推送改动
#你的改动现在已经在本地仓库的 HEAD 中了。执行如下命令以将这些改动提交到远端仓库:
git push origin master
#可以把 master 换成你想要推送的任何分支。
#如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加:
git remote add origin <server>
#如此你就能够将你的改动推送到所添加的服务器上去了。
6.分支
#分支是用来将特性开发绝缘开来的。
#在你创建仓库的时候,master 是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。
#创建一个叫做“feature_x”的分支,并切换过去:
git checkout -b feature_x
#切换回主分支:
git checkout master
#再把新建的分支删掉:
git branch -d feature_x
#除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的:
git push origin <branch>
7.更新与合并
#要更新你的本地仓库至最新改动,执行:
git pull
#以在你的工作目录中 获取(fetch) 并 合并(merge) 远端的改动。
#要合并其他分支到你的当前分支(例如 master),执行:
git merge <branch>
#在这两种情况下,git 都会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,并可能出现冲突(conflicts)。 这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。改完之后,你需要执行如下命令以将它们标记为合并成功:
git add <filename>
#在合并改动之前,你可以使用如下命令预览差异:
git diff <source_branch> <target_branch>
8.标签
#为软件发布创建标签是推荐的。这个概念早已存在,在 SVN 中也有。你可以执行如下命令创建一个叫做 1.0.0 的标签:
git tag 1.0.0 1b2e1d63ff
#1b2e1d63ff 是你想要标记的提交 ID 的前 10 位字符。可以使用下列命令获取提交 ID:
git log
#你也可以使用少一点的提交 ID 前几位,只要它的指向具有唯一性。
9.替换本地改动
#假如你操作失误(当然,这最好永远不要发生),你可以使用如下命令替换掉本地改动:
git checkout -- <filename>
#此命令会使用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到暂存区的改动以及新文件都不会受到影响。
#假如你想丢弃你在本地的所有改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:
git fetch origin
git reset --hard origin/master
10.实用小贴士
#内建的图形化 git:
gitk
#彩色的 git 输出:
git config color.ui true
#显示历史记录时,每个提交的信息只显示一行:
git config format.pretty oneline
#交互式添加文件到暂存区:
git add -i
GitHub指南的更多相关文章
- 【项目管理】GitHub使用操作指南
GitHub使用操作指南 作者:白宁超 2016年10月5日18:51:03> 摘要:GitHub的是版本控制和协作代码托管平台,它可以让你和其他人的项目从任何地方合作.相对于CVS和SVN的联 ...
- 【翻译】Fluent NHibernate介绍和入门指南
英文原文地址:https://github.com/jagregory/fluent-nhibernate/wiki/Getting-started 翻译原文地址:http://www.cnblogs ...
- 使用git和github托管个人项目
1. 安装 cygwin 和 cygwin 下的 git , 测试 git 命令可用; 参考: https://cygwin.com/install.html 2. 注册 github 账号: ...
- 史上最简单的 GitHub 教程
史上最简单的 GitHub 教程 温馨提示:本系列博文已经同步到 GitHub,如有需要的话,欢迎大家到「github-tutorial」进行Star和Fork操作! 1 简介 GitHub 是一个面 ...
- GitHub 的简单使用
GitHub 的简单使用 2016-01-28 16:32:481909浏览1评论 一.Git 版本控制器 commit:做一个版本:commit new file:添加到版本中,下边填的是项目的描述 ...
- GITHUB手册
GitHub 指南 原文地址:GitHub官网指南 示例项目:Hello World 十分钟轻松教学 在学习计算机语言编程的过程中创建Hello World 项目是一个历史悠久的传统.当你接触一门新事 ...
- git创建使用1https://blog.csdn.net/Hanani_Jia/article/details/77950594
这篇文章是我自己写的关于GitHub的内容,从我刚听到这个直到设置成功每一步都有详细的步骤来解释,其中有一些截图或者代码来自于网上. 首先,我先对GitHub来一个简单的介绍,GitHub有一个很强大 ...
- 如何在Windows上使用Python进行开发
本文由葡萄城技术团队于原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 一直以来C#都是微软在编程语言方面最为显著的Tag,但时至今日Python ...
- 搜刮一些开源项目的APP
iOS完整App资源收集 <iOS完整app资源收集> <GitHub 上有哪些完整的 iOS-App 源码值得参考?> <GitHub 上有哪些完整的 iOS-App ...
随机推荐
- phonegap 2.7 ios配置安装详细教程(2.9通用)
原地址:http://www.cnblogs.com/yansi/archive/2013/05/14/3078222.html 在移动开发日益激烈的情况下我也不得不硬着头皮尝试下新鲜的html5的a ...
- bzoj1201: [HNOI2005]数三角形
Description Input 大三角形的所有短边可以看成由(n+1)*n/2个单位三角形的边界组成.如下图的灰色三角形所示.其中第1排有1个灰色三角形,第2排有2个灰色三角形,……,第n排有n个 ...
- [terminal]Terminal常用快捷键
1. 终端操作 Ctrl+d/exit 退出当前Termina1 Ctrl+l/clear 清除屏幕 Ctrl+Alt+t/Ctrl+shift+n 打开新终端窗口 Ctrl+shift+ ...
- “代理 XP”组件已作为此服务器安全配置的一部分被关闭。解决方法
新建维护计划的时候遇到下图的报错信息 标题: Microsoft SQL Server Management Studio------------------------------ “代理 XP”组 ...
- 【转】C#中判断扫描枪输入与键盘输入
提出问题:在收货系统中,常常要用到扫描枪扫描条码输入到TextBox,当条码无法扫描时,需要手工输入.如果是扫描枪输入时,我们将自动去判读条码,而手工输入时,最终需要加按回车键确认后判读条码.这时候我 ...
- PHP Socket 编程详解
PHP中的实现 服务端 <?php set_time_limit(0); // 设置主机和端口 $host = "127.0.0.1"; $port = 12387; // ...
- 黄聪:主机宝安装wordpress注意事项
1.web环境安装PHP使用5.4.21-nts-03版本 2.web环境安装Mysql使用5.5.45版本 3.创建好站点后,给站点的public_html目录添加IIS_xxx用户最高权限,添加N ...
- [DNS] 网页无法打开,设置合适的DNS解决问题
一.缘由: 家里装的10M长城宽带,下载速度很快,就是打开网页会经常失败.播放视频会卡无法播放:最近尤甚,甚是恼怒. 在画个圈圈诅咒长城宽带的同时,突然想起来打不开网页很大可能是DNS解析失败导致,故 ...
- 简单数据访问类,生成简单SQL,自动转换成java对象
import java.util.HashMap; import java.util.List; import java.util.Map; import org.slf4j.Logger; impo ...
- 加入ScrollView后OnGestureListener无效的解决办法
android中,ViewFlipper+OnGestureListener可以实现左右滑动效果. 但是在ViewFlipper加上了ScrollView就悲剧了,左右滑动事件无效了…… 这里其实只需 ...