在GitHub上管理项目

新建repository

  本地目录下,在命令行里新建一个代码仓库(repository)
  里面只有一个README.md
  命令如下:
  touch README.md
  git init
  初始化repository

  git add README.md
  将README.md加入到缓存区

  (可以用git add --a将所有改动提交到缓存(注意是两个杠))

  git commit -m "first commit"
  提交改变,并且附上提交信息"first commit"

Push

  git remote add origin https://github.com/XXX(username)/YYYY(projectname).git

  加上一个remote的地址,名叫origin,地址是github上的地址(Create a new repo就会有)
  因为Git是分布式的,所以可以有多个remote.

  git push -u origin master
  将本地内容push到github上的那个地址上去。

  参数-u
  用了参数-u之后,以后就可以直接用不带参数的git pull从之前push到的分支来pull。

  此时如果origin的master分支上有一些本地没有的提交,push会失败.

  所以解决的办法是, 首先设定本地master的上游分支:

  git branch --set-upstream-to=origin/master

  然后pull:
  git pull --rebase

  最后再push:

  git push

分支

  新建好的代码库有且仅有一个主分支(master),它是自动建立的。
  可以新建分支用于开发:
  git branch develop master
  新建一个叫develop的分支,基于master分支

  切换到这个分支:
  git checkout develop
  现在可以在这个develop分支上做一些改动,并且提交。
  注意:切换分支的时候可以发现,在Windows中的repository文件夹中的文件内容也会实时相应改变,变成当前分支的内容。

push方法1:

  现在如果想直接Push这个develop分支上的内容到github

  git push -u origin

  如果是新建分支第一次push,会提示:
  fatal: The current branch develop has no upstream branch.
  To push the current branch and set the remote as upstream, use
  git push --set-upstream origin develop
  输入这行命令,然后输入用户名和密码,就push成功了。

  以后的push就只需要输入git push origin

  

  

push方法2:

  比如新建了一个叫dev的分支,而github网站上还没有,可以直接:

  git push -u origin dev

  这样一个新分支就创建好了。

push方法3:

  提交到github的分支有多个,提交时可以用这样的格式:

  git push -u origin local:remote
  

  比如:git push -u origin master:master
  表明将本地的master分支(冒号前)push到github的master分支(冒号后)。
  如果左边不写为空,将会删除远程的右边分支。

创建分支的另一种方法

  用命令git checkout -b develop2 develop
  可以新建一个分支develop2,同时切换到这个分支

删除分支

  git branch可以查看所有的分支
  git branch -d develop2 将develop2分支删除

Clone

  使用git clone+github地址的方法,项目默认只有master分支。git branch也只有master

  要看所有的分支:git branch -a或者是git branch -r

  这时候要新建一个分支,叫做dev,基于远程的dev分支:git checkout -b dev origin/dev

加Tag

  git tag tagname develop
  git tag中的两个参数,一个是标签名称,另一个是希望打标签的点develop分支的末梢。

合并分支

  git checkout master

  先转到主分支
  git merge --no-ff develop

  然后把develop分支merge过来

  参数意义:
  不用参数的默认情况下,是执行快进式合并。
  使用参数--no-ff,会执行正常合并,在master分支上生成一个新节点。
  merge的时候如果遇到冲突,就手动解决,然后重新add,commit即可。

相关链接:  

  GitHub网址:https://github.com/

在GitHub上管理项目的更多相关文章

  1. 【转载】在GitHub上管理项目

    在GitHub上管理项目 新建repository 本地目录下,在命令行里新建一个代码仓库(repository) 里面只有一个README.md 命令如下: touch README.md git ...

  2. 在github上fork项目如何同步并解决冲突

    在github上fork项目如何同步并解决冲突 在github上有些项目我们可能会进行一些自己功能的添加但是提交PR后作者基于设计或者其他原因考虑没有通过,但是这个功能又是我们必须的.这时我们就想自己 ...

  3. 如何从零开始在github上新建项目

    准备工作: (1)安装git: Git-2.16.1-64-bit.exe (2)新建一个文件夹grpc007,作为本地git仓库 (3)进入到grpc007目录,右键/打开git bash.使用gi ...

  4. IDEA中配置Git,在Github上clone项目到IDEA

    一.安装git 1.用homebrew安装git 运行以下命令安装 brew install git 默认的安装位置是 /usr/local/Cellar目录中(后面会用到) 二.在idea中配置Gi ...

  5. 如何从eclipse中下载并导入Github上的项目

    eclipse导入项目,方法就是点击File ->Import,选择Existing Projects into Workspace 但前提是,你导入的这个项目原本就是用eclipse的构建的, ...

  6. 参与github上开源项目的大致流程和注意事项

    Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...

  7. 关于Windows azure从github上部署项目

    自己做了一个闪存解析的webapi,今天尝试了一下加一个HelpPage,本地访问正常,但是在azure上就报错. 项目是不熟在WindowsAzure上的,项目自动同步github上的项目.gith ...

  8. github git 在GitHub上创建项目并将本地项目push到网站上

    众所周知,git是与svn类似的版本控制系统,git的去中心化.分布式等的优点,在不久将来用户量大有可能超过svn, 常见的代码托管网站有GitHub,coding.net, gitee.com 码云 ...

  9. 打包github上的项目,并在本地使用

    在GitHub上去找工具并把地址克隆下来 在本地创建一个文件夹,文件夹内右击 (建议路径为英文,并保证本机有github的软件: https://jingyan.baidu.com/article/9 ...

随机推荐

  1. Cordova webapp实战开发:(7)如何通过简单的方法做到,不重新发布APP来修复bug、增加功能、或者躲开苹果的一些严格审核?

    到<Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?>为止,我们已经大体学会了如何使用Cordova了,那些都是使用Cordova的开发者必备的技能. ...

  2. Windows Azure HandBook (9) Azure性能测试(2)

    <Windows Azure Platform 系列文章目录> 在上一节中,笔者介绍了我们在Azure性能测试之前,首先需要提交<渗透性测试表> Windows Azure H ...

  3. C#指定时间和当前时间的相差的月份、天数

    DateTime 类型有时间的 年月日时分秒等属性,但是获取两个DateTime的 相差月份,就需要自己写了: public static int GetSubMonth(DateTime speci ...

  4. GoodReader跨域访问HT for Web手册

    最近下载了GoodReader App,发现GoodReader中打开的页面不仅支持WebGL,同时还允许跨域访问资源,以前不少HT for Web手册的例子需要Web服务器发布的方式才能访问,否则需 ...

  5. 使用.NET 4.0+ 操作64位系统中的注册表

    一.64位系统中的注册表 以 LocalMachine 中的启动项为例: 64位应用的注册表位置还是在: SOFTWARE\Microsoft\Windows\CurrentVersion\Run 而 ...

  6. HTML的select控件美化

    HTML的select控件美化 CSS: .div-select { border: solid 1px #999; height: 40px; line-height: 40px; cursor: ...

  7. js Date 时间格式化的扩展

    js Date 时间格式化的扩展: Date.prototype.format = function (fmt) { var o = { , //月 "d+": this.getD ...

  8. 【Java每日一题】20161114

    package Nov2016; import java.io.Serializable; // V1.0版 public class Ques1114 implements Serializable ...

  9. 2015-2016 ACM-ICPC Nordic Collegiate Programming Contest ---E题Entertainment Box(有点变化的贪心)

    提交链接 http://codeforces.com/gym/100781/submit Description: Ada, Bertrand and Charles often argue over ...

  10. node.js 抓取网页数据

    var $ = require('jquery'); var request = require('request'); request({ url: 'http:\\www.baidu.com',/ ...