新建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/

原文:https://www.cnblogs.com/mengdd/p/3447464.html

Git 管理篇(详细)的更多相关文章

  1. Git使用详细教程(一)

    很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...

  2. git 基本命令详细解释

    创建: 2017-04-05 17:04:03         2017-04-24 更新: 2017-05-16 更新: 2017-06-27  完善git remote add  更新: 2017 ...

  3. git的详细安装

    git的详细安装 Git 是时候动手尝试下 Git 了,不过得先安装好它.有许多种安装方式,主要分为两种,一种是通过编译源代码来安装:另一种是使用为特定平台预编译好的安装包. 从源代码安装 若是条件允 ...

  4. Git的详细使用

    关于Git的详细使用,下面博主的博客写的非常的详细! 可以参考一下. https://blog.csdn.net/qq_19835247/article/details/104620042 人生需要准 ...

  5. git超详细教程

    GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化Gi ...

  6. Git 的详细使用

      本文翻译自Understanding Git Source Control in Xcode (译者myShire)欢迎您加入我们的翻译小组. 在应用程序开发过程中,很重要的一部分工作就是如何进行 ...

  7. git使用详细介绍

    1. Git概念 1.1. Git库中由三部分组成        Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而 ...

  8. Ubuntu12.04 Git 服务器详细配置

    Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,学过Linux的都知道,Git的优点我就不再多说了,我也是很喜欢Linux的.今天我们一起学习Git服务器在Ubunt ...

  9. 或许是介绍Android Studio使用Git最详细的文章

    欢迎访问我的个人博客转发请注明出处:http://www.wensibo.top/2017/03/12/GitOnAS/ 前言 本文较长,图片很多很多,流量党慎入 使用Git已经有一段时间了,但是之前 ...

随机推荐

  1. robotframework-ride1.7.3.1更新安装

    在2019年之前,robotframework-ride的版本一直是1.5.2.1,是2016年1月份的版本,里面需要使用 wxPython2.8-win64-unicode-2.8.12.1-py2 ...

  2. 2019-08-01 JQuery事件

    Jquery简单的事件 l blur(fn) 当失去焦点时 l change(fn) 当内容发生改变时 l click(fn) 当鼠标单击时 l dblclick 当鼠标双击时 l focus(fn) ...

  3. springmvc处理json数据

    springMVC提供了处理JSON格式请求/响应的HttpMessageConverter MappingJckson2HttpMessageConverter利用Jackson开源类包处理JSON ...

  4. mmap vs read

    先放个结论: 内存映射通常比随机访问更快,尤其访问的对象是分离的和不可预测的. 内存映射会持续占用pages, 直到完成访问. 这意味当长时间重度使用一个文件很久之前, 然后你关闭了它, 然后再重新打 ...

  5. 当前标识(IIS APPPOOL\DefaultAppPool)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的写访问权限

    找到或增加这个目录,给他增加权限.

  6. 【转载】C#通过InsertAt方法在DataTable特定位置插入一条数据

    在C#中的Datatable数据变量的操作过程中,可以通过DataTable变量的Rows属性的InsertAt方法往DataTable的指定位置行数位置插入一个新行数据,即往DataTable表格指 ...

  7. 【转载】使用宝塔Linux面板屏蔽某些IP访问你的服务器

    在服务器的运维过程中,有时候发现一些异常IP或者扫描漏洞攻击者IP访问你的网站,此时如果想屏蔽该IP访问你的服务器,可以通过云服务器厂商提供的安全组进行设置.如果服务器安装有宝塔面板,也可以通过宝塔面 ...

  8. vue中的插槽

    匿名插槽 // comp1 <div> <slot></slot> </div> // parent <comp>hello</com ...

  9. Linux chage命令详解

    原文 chage命令用于密码实效管理,该是用来修改帐号和密码的有效期限,接下来通过本文给大家介绍Linux chage命令相关知识,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起学习吧 lin ...

  10. Linux 常用命令(根据自己的理解随时更新)

    1. linux 目录解释系统启动必须: /boot:存放的启动 Linux 时使用的内核文件,包括连接文件以及镜像文件. /etc:存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导 ...