简单几步操作让你在终端下用git实现文件的上传。

一、克隆项目
    在工作中,常见的情景都是远程库已经建好了,需要大家把代码拉下来,共同协作开发。本文所有操作均在终端下进行。
    //克隆一个本地库
    git clone 你的远程仓库地址

二、本地库的操作
   //添加修改
    1、git add 修改的文件名
     //提交修改内容
    2、git commit -m "修改备注"

三、把修改的内容提交到远程库
    //第一次推送,加上-u参数,以后推送可省略
     git push -u origin master

就这简单几步,就能实现你的代码上传到远程仓库啦。如果你还有其他更多需求,可以继续往下看。

四、其他经常用到的操作
  1、基本操作

  //添加远程仓库

  git remote add origin 远程仓库地址

//用Xcode打开文件
     open -a Xcode 文件名

//随时掌握工作区的状态
     git status

//查看文件的修改内容
    git diff  文件名

2、版本管理
    //版本回退到上一个版本,HEAD表示最新版本
    git reset --hard HEAD^

//版本回退到上上一个版本
    git reset --hard HEAD^^

//查看提交历史,可以看到不同版本的commit_id
    git log   //出来的信息较全较多,下面的命令出来的简略点
    git log --pretty=oneline

//查看命令历史,以便确定回到未来的哪个版本
    git reflog

//版本回退到指定版本,commit_id
    git reset --hard commit_id

3、修改和删除操作
    //可以丢弃工作区的修改,-- 很重要,不能少,否则会变成“切换到另一个分支”
    git checkout -- 文件名

//把暂存区的修改撤销掉,重新放回工作区
    git reset HEAD 文件名

//删除文件
    git rm 文件名

4、分支管理
    git 推荐使用分支完成某个任务,合并后再删掉分支。这样过程更安全
     1)创建并切换到分支,-b 表示创建并切换
        git checkout -b 分支名字
        等于两条命令: git branch 分支名字     //创建分支
                    git checkout 分支名字     //切换到分支

2)列出所有分支,当前分支前面会标一个*号
        git branch

3)在分支上进行修改等操作
        git add 文件名
        git commit -m "修改备注"

4)分支工作完成,切换回master分支,把分支工作成果合并到master分支上,然后删除分支
       git checkout master
       git merge 分支名字
       git branch -d 分支名字

合并分支时,git会优先用Fast forward模式,这种模式下,删除分支后,会丢掉分支信息。
       强制禁用Fast forward模式,git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息
        //--no-ff参数,表示禁用Fast forward
       git merge --no-ff -m "merge with no-ff" 分支名字

5)发生冲突的话需要手动进行修改,在提交合并
      //可以看到分支合并图
      git log --graph
   
    在实际开发中,我们应该按照几个基本原则进行分支管理:
  1、master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活
    2、那在哪干活呢?干活都在自己建的分支上
    3、你和你的小伙伴们每个人都有自己的分支,时不时地往分支上合并就可以了

git 基本使用的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. [Node.js] Broswerify -- 2

    Browserify allows you to leverage 10s of thousands of javascript modules available in the Node Packa ...

  2. HDU 4876 ZCC loves cards(暴力剪枝)

    HDU 4876 ZCC loves cards 题目链接 题意:给定一些卡片,每一个卡片上有数字,如今选k个卡片,绕成一个环,每次能够再这个环上连续选1 - k张卡片,得到他们的异或和的数,给定一个 ...

  3. OS X下开发!ios系统贪食蛇!——from cocos2d-x 3.0

    前几天用cocos2d-x写了个贪食蛇!这次是全然在osx下开发的.基本的思路是这种我建立了一个Snake类,当中有两个构造函数一个是用于存放蛇身体sprite的图片和Snake的X坐标和Y坐标.另外 ...

  4. Cocos2d-x 3.1 内存管理机制

    Cocos2d-x使用的内存管理方式是引用计数.引用计数是一种非常有效的机制.通过给每个对象维护一个引用计数器,记录该对象当前被引用的次数.当对象添加一次引用时,计数器加1:而对象失去一次引用时.计数 ...

  5. QWT6.0.1+win7下安装说明

    A) 简介 1.QWT是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或 ...

  6. Redis 分区

    分区是分割数据到多个Redis实例的处理过程,因此每个实例只保存key的一个子集. 分区的优势 通过利用多台计算机内存的和值,允许我们构造更大的数据库. 通过多核和多台计算机,允许我们扩展计算能力:通 ...

  7. WPF 之 TreeView右键选中节点及节点重命名

    下面的TreeView节点是通过数据双向绑定的方式,绑定到TextBlock控件和TextBox控件的Text属性上,并且让两者绑定相同的属性,同时使TextBox控件刚好完全覆盖TextBlock控 ...

  8. WPF之基于路径的动画

    不是突然想到要做一个路径动画的,是今天谈业务需求的时候偶然谈到的, 一艘船从一个国家到另外一个国家,沿着一条固定的路线前进,就是一个简单的动画效果,以前貌似在书上看到过,所以自己也来做一个. 在网上搜 ...

  9. IT项目技术建议书核心内容

    第一部分:概述部分 该部分的重点是理解标书,理解项目建设的背景,建设该项目的初衷究竟是什么?需要解决的核心关键问题是什么?基于对项目的理解然后明确项目建设的目标,项目建设的原则,项目本事的定位,项目建 ...

  10. 【开源项目9】ImageLoaderConfiguration详解

    ImageLoader类中包含了所有操作.他是一个单例,为了获取它的一个单一实例,你需要调用getInstance()方法.在使用 ImageLoader来显示图片之前,你需要初始化它的配置-Imag ...