新建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即可。

在Git远程管理项目的更多相关文章

  1. 怎么使用git来管理项目版本?

    怎么使用git来管理项目版本和存放代码? 作者:rongfangliu 转载请注明出处:http://www.cnblogs.com/rongfangliu/p/howuseGit.html 工具: ...

  2. git添加本地的项目到git远程管理仓库

    目标:将本地存在的项目添加到git远程仓库管理 步骤: 1. 需要一个git远程仓库管理地址 例如:https://github.com/xingfupeng/test.git git@github. ...

  3. 转:Git Submodule管理项目子模块

    使用场景 当项目越来越庞大之后,不可避免的要拆分成多个子模块,我们希望各个子模块有独立的版本管理,并且由专门的人去维护,这时候我们就要用到git的submodule功能. 常用命令 git clone ...

  4. Git Submodule管理项目子模块

    使用场景 当项目越来越庞大之后,不可避免的要拆分成多个子模块,我们希望各个子模块有独立的版本管理,并且由专门的人去维护,这时候我们就要用到git的submodule功能. 常用命令 git clone ...

  5. 如何删除git远程仓库项目的所有内容,重新提交所有内容

    如果我们上传了一个项目到git并已经commit和push了所有内容,但是忘记搞gitignore文件, 导致一些不想加入版本控制的文件,如IDE配置文件,编译文件,部署文件等, 现在不知道怎么办了? ...

  6. 【版本管理】git远程管理

    GitHub相关:       第1步:注册github账号,创建SSH Key. 在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件, ...

  7. Git远程管理[五]

    标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 相关命令 git clone https://github.com/guohongz ...

  8. git远程管理

  9. [转] 使用Git进行小项目代码管理

    http://www.uml.org.cn/pzgl/201206155.asp 之前在公司使用过SVN(无甚感觉)和ClearCase(把人恶心死的东西)两种版本控制工具,都不满意.后来想自己写点东 ...

随机推荐

  1. kali安装后配置

    0x00.安装Vmware Tools 由于是在VMware Workstation里面安装的,所以需要首先安装VMware tools工具方便我们Ctrl+C和Ctrl+V,步骤如下: 在VMWar ...

  2. 在Linux系统下使用Github的基本教程

    1. 安装git: sudo apt-get install git-core git-gui git-doc 2.到https://github.com/ 注册一个帐号,一会儿客户端登录的时候要使用 ...

  3. AI理论学习笔记(一):深度学习的前世今生

    AI理论学习笔记(一):深度学习的前世今生 大家还记得以深度学习技术为基础的电脑程序AlphaGo吗?这是人类历史中在某种意义的第一次机器打败人类的例子,其最大的魅力就是深度学习(Deep Learn ...

  4. Pandas迭代

    Pandas对象之间的基本迭代的行为取决于类型.当迭代一个系列时,它被视为数组式,基本迭代产生这些值.其他数据结构,如:DataFrame和Panel,遵循类似惯例迭代对象的键. 简而言之,基本迭代( ...

  5. Spring 自定义标签配置

    前景:经常使用一些依赖于Spring的组件时,发现可以通过自定义配置Spring的标签来实现插件的注入,例如数据库源的配置,Mybatis的配置等.那么这些Spring标签是如何自定义配置的?学习Sp ...

  6. java 在Excel中插入图片 POI实现

    一.POI简介 Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97- ...

  7. srs部署到ubuntu 18.04 server

    srs.txt ubuntu 18.04 安装 srs 1. 上传srs_40.7z和h2ws.7z到linux服务器,然后远程ssh连接 (假设登陆用户名是bob,linux服务器ip是192.16 ...

  8. opensack-mitaka网络性能测试shaker

    一.项目介绍 Shaker项目是由Mirantis发起,专门针对OpenStack网络性能的测试工具.通过模拟不同的网络场景和heat模板,创建虚拟机,并在虚拟机里运行iperf.iperf3.net ...

  9. MVC框架中的值提供机制(三)

    在MVC框架中NameValueCollectionValueProvider采用一个NameValueCollection作为数据源,DictionnaryValueProvider的数据源类型自然 ...

  10. flask_sqlalchemy + sqlite 的一系列使用方法

    如何使用在官网上有详细记录 :http://flask-sqlalchemy.pocoo.org/2.3/ 作为项目笔记,简单阐述使用方法: 1.创建flask_sqlalchemy基于sqlite的 ...