新建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. Java学习:JDBC快速入门

    本节类容 JDBC基本概念 快速入门 JDBC基本概念 概念: Java DataBase Connectivity Java 数据库连接,Java语言操作数据库 JDBC本质: 其实是官方(sun公 ...

  2. Java学习:集合的使用与数组的区别

    ArrayList 集合 ArrayList 集合 ArrayList<String> list = new ArrayList<>(); 对于ArrayList来说,有一个尖 ...

  3. Windows 查看端口占用进程并关闭

    当我们在运行一些软件需要特定软件(如tomcat)时,有可能会碰上端口被占用的情况,这时候我们可能就需要更改端口或把占用端口的进程结束掉,因为更换端口可能会导致当前环境产生一些的问题或是需要重新配置其 ...

  4. 使用GitHub搜索技巧

    in:name example 名字中有"example"in:readme example readme中有"example"in:description e ...

  5. Java自学-接口与继承 Object类

    Java中的超类 Object 步骤 1 : Object类是所有类的父类 声明一个类的时候,默认是继承了Object public class Hero extends Object package ...

  6. statsvn使用小记

    准备工作 1.安装TortoiseSVN,在安装时需要安装svn命令行工具: 2.拉取svn代码: svn co https://svn.myserver.cn/svn/myproject1\trun ...

  7. Node.js 连接 MySQL数据库

    安装指令:npm install mysql var mysql = require("mysql");console.log(mysql); // 创建链接对象 var conn ...

  8. JavaScript 函数(二)

    一.匿名函数 1.匿名函数 没有名字的函数即称为匿名函数. 2.使用方法 a.将匿名函数赋值给一个变量,这样就可以通过变量进行调用 b.匿名函数自调用 3.关于自执行函数(匿名函数自调用)的作用:防止 ...

  9. ThreadLocal概述、以及存在的坑

    ThreadLocal: 线程的一个本地化对象.当多线程中的对象使用ThreadLocal维护变量是,ThreadLocal为每个使用该变量的线程分配一个独立的变量副本. threadlocal通常定 ...

  10. 【爬虫】Load版的生产者和消费者模式

    ''' Lock版的生产者和消费者模式 ''' import threading import random import time gMoney = 1000 # 原始金额 gLoad = thre ...