第一步:设置全局变量:

git config --global user.name "gang.li"
git config --global user.email "ligang@ptthink.com"

第二步:初始化仓库,并推送到远程仓库(假设第一次推送运行此步骤,否则跳过此步骤):

/* 创建项目目录,并初始化仓库 */
mkdir test
cd test
git init
/* 新增README文件。并提交*/
touch README
git add README
git commit -m 'first commit'
/* 关联远程仓库,并推送 */
git remote add origin git@git.*.jp:gitlab/test.git
git push -u origin master

第三步:克隆远程主机项目到本地,并建立相应分支

git clone git@git.*.jp:gitlab/test.git
git checkout -b develop
git branch --set-upstream develop origin/develop(git branch --set-upstream-to=origin/develop develop)

第四步:增删操作,并推送到指定远程分支

/* 删除文件(git rm 本地文件并不会被删除) */
git rm -rf target
git add .
git commit -m "claer"
git push origin develop

第五步:合并分支:

/* 查看全部分支 */
git branch -r/-a
/* 合并develop到master分支 */
git checkout master
git merge --no-ff develop
git push origin master

默认情况下,Git运行"快进式合并"(fast-farward merge),会直接将Master分支指向Develop分支。使用--no-ff參数后,会运行正常合并。在Master分支上生成一个新节点。

一、从远程主机克隆一个版本号库

(1)git clone <版本号库的网址>

(2)克隆版本号库的时候,所使用的远程主机自己主动被Git命名为Origin。假设想用其它的主机名。使用-o指定:

git clone -o jQuery https://github.com/jquery/jquery.git

二、远程主机管理

为了便于管理,Git要求每一个远程主机必须指定一个主机名。

(1)列出全部远程主机:git remote

(2)查看远程主机网址:git remote -v

(3)查看主机具体信息:git remote show origin

(4)加入远程主机:git remote add <主机名> <网址>

(5)删除远程主机:git remote rm <主机名>

(6)重命名远程主机:git remote rename <主机名> <网址>

三、取回本地

(1)所有取回本地,不自己主动合并:git fetch <远程主机名> <分支名>

(2)取回远程主机某个分支的更新,再与本地的指定分支合并:git pull <远程主机名> <远程分支名>:<本地分支名>

取回origin主机的next分支,并与本地的master分支合并:git pull origin next:master

假设远程分支与当前分支合并,则冒号后面的部分可省略:git pull origin next

(2)手动建立追踪关系:git branch --set-upstream master origin/next

PS:git pull origin next  等价于:git fetch origin   git merge origin/next

四、推送到远程

(1)将本地分支的更新。推送到远程主机:git push <远程主机名> <本地分支名>:<远程分支名>

(2)假设省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名)。假设该远程分支不存在,则会被新建:git push origin develop

(3)假设省略本地分支名,则表示删除指定的远程分支,由于这等同于推送一个空的本地分支到远程分支:

git push origin :master

等价于:git push origin --delete master(删除origin主机的master分支:git push

(4)假设当前分支仅仅有一个追踪分支。那么主机名都能够省略:git push

注意,分支推送顺序的写法是<来源地>:<目的地>。所以git pull是<远程分支>:<本地分支>,而git push是<本地分支>:<远程分支>。

五、其它命令

(1)gitk:打开图形化界面

(2)git --help

(3)git merge --help

五步掌握Git的基本开发使用命令的更多相关文章

  1. 软件工程 Coding.net代码托管平台 Git初学者的使用总结 五步完成 程序,文件,文件夹的Git

    一.前言 第一次用git相关的命令行,我使用的是Coding.net代码托管平台.Coding.net 自主打造的基于 Git 的代码托管平台,提供高性能的远端仓库,还有保护分支,历史版本分屏对比. ...

  2. 五分钟上手Git

    团队开发中.遵循一个合理.清晰的Git使用流程.是非常重要的.否则,每一个人都提交一堆杂乱无章的commit,项目非常快就会变得难以协调和维护.以下是ThoughtBot 的Git使用规范流程.我从中 ...

  3. 五步搞定Android开发环境部署

    引言   在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入 Android浪潮的朋友们,为了确保大家能顺利完成开发 ...

  4. 五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程

      在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭 ...

  5. 五步完成一个 VSCode 扩展(插件)开发

    第一步: 安装扩展生成器 npm install -g yo generator-code vsce 第二步: 初始化一个 Hello World 扩展 yo code 图来自 CN-VScode-D ...

  6. 深入浅出Docker(五):基于Fig搭建开发环境

    概述 在搭建开发环境时,我们都希望搭建过程能够简单,并且一劳永逸,其他的同事可以复用已经搭建好的开发环境以节省开发时间.而在搭建开发环境时,我们经常会被复杂的配置以及重复的下载安装所困扰.在Docke ...

  7. 一步一步安装Git控件版本工具

    Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.Git的读音为/gɪt/.Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.[2 ...

  8. 还在使用pdf、word简历?简单五步实现github托管个人逼格简历

    写在前面: 什么是git.github? git 版本控制工具 github 通过git工具做的版本控制的项目托管平台 项目开发肯定不止一个程序猿,多个程序猿针对同一个文件进行代码读写操作时,是先保存 ...

  9. HTML5离线Web应用实战:五步创建成功

    [IT168 技术]HTML5近十年来发展得如火如荼,在HTML 5平台上,视频,音频,图象,动画,以及同电脑的交互都被标准化.HTML功能越来越丰富,支持图片上传拖拽.支持localstorage. ...

随机推荐

  1. Python之路-迭代器 生成器 推导式

    迭代器 可迭代对象 遵守可迭代协议的就是可迭代对象,例如:字符串,list dic tuple set都是可迭代对象 或者说,能被for循环的都是可迭代对象 或者说,具有对象.__iter__方法的都 ...

  2. url编码&&PHP大法&&这个看起来有点简单&&HTML 中有用的字符实体

    URL编码 Url编码通常也被称为百分号编码(Url Encoding,also known as percent-encoding),是因为它的编码方式非常简单,使用%百分号加上两位的字符——012 ...

  3. 牛客网暑期ACM多校训练营(第六场) I Team Rocket(线段树)

    题意: 给定n个区间, m次询问, 每次询问给一个点, 问这个点在哪些区间内, 然后删掉这些区间. 分析: 将n个区间按L大小升序排列, 然后将这些区间视为点构建一棵n个点的线段树, 树的节点记录这个 ...

  4. A Survey of Model Compression and Acceleration for Deep Neural Network时s

    A Survey of Model Compression and Acceleration for Deep Neural Network时s 本文全面概述了深度神经网络的压缩方法,主要可分为参数修 ...

  5. Leetcode 402.移掉k位数字

    移调k位数字 给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小. 注意: num 的长度小于 10002 且 ≥ k. num 不会包含任何前导零. 示例 1 : ...

  6. [android开发篇]elicpse安装教程

    http://www.runoob.com/eclipse/eclipse-install.html Eclipse 安装(Neon 版本) Eclipse 最新版本 Eclipse Neon,这个首 ...

  7. Codeforces Round #402 (Div. 2) A+B+C+D

    Codeforces Round #402 (Div. 2) A. Pupils Redistribution 模拟大法好.两个数列分别含有n个数x(1<=x<=5) .现在要求交换一些数 ...

  8. BZOJ 3168 [Heoi2013]钙铁锌硒维生素 ——矩阵乘法 矩阵求逆

    考虑向量ai能否换成向量bj 首先ai都是线性无关的,然后可以a线性表出bj c1*a1+c2*a2+...=bj 然后移项,得 c1/ci*a1+...-1/ci*bj+...=ai 所以当ci不为 ...

  9. [BZOJ1583] [Usaco2009 Mar]Moon Mooing 哞哞叫(队列)

    传送门 思想有点像蚯蚓那个题 #include <cstdio> #define N 4000001 #define LL long long #define min(x, y) ((x) ...

  10. Spoj-TRNGL Make Triangle

    Make Triangle Chayanika loves Mathematics. She is learning a new chapter geometry. While reading the ...