git

git 是一个版本管理系统(VCS),可以在任何时间点,将文档的状态作为一份更新记录保存起来,并且在任意的时间点,恢复更新记录

版本管理

版本管理是一种记录文件变化的方式,方便查阅特定版本号的文件内容

人为维护文档版本问题

1、文档数量紊多,命名不清晰,导致文档版本混乱
2、每次编译文档需要赋值,不方便
3、多人同时编辑一个文档,容易产生覆盖

git使用

在使用git前,需要全局配置git

  • 提交用户名 - git config --global user.name “用户名”
  • 提交邮箱 - git config --gllobal user.email “邮箱”

**注:全局配置只执行一次,若需要修改,重复上述命令

git提交命令

  • git init 初始化git仓库

  • git status 查看文件状态

  • git add . 提交新增文件内容

  • git commit -m “commit” 提交文件说明

  • git log 查看提交记录

  • git remote add origin https://gitee.com/xxxx/xxxxx.git 与远程仓库关联

  • git push -u origin master 把本地分支推送到远程

  • git clone https://gitee.com/xxxx/xxxxx.git 下载远程master分支(克隆)

  • git pull --rebase origin master 获取远程库与本地同步合并(远程仓库不为空)

  • git remote remove origin 断开远程库与本地间的连接

  • 在git bash中移除本地与git之间的连接
    find . -name “.git” | xargs rm -Rf 移除本地与git之间的连接

git分支

分支是当前工作目录中代码的一份副本,使用分支,可以让我们从开发支线上分离出来,以免影响开发主线

查看分支

  • git branch 查看本地分支
  • git branch -a 查看所有分支(本地与远程)
  • git branch -r 查看远程分支
  • git branch -vv 查看本地分支与远程分支之间的关联关系

分支命令

  • git branch 分支名/develop 创建新的分支
  • git checkout 分支名/develop 切换分支(在暂存区中覆盖原工作目录中的分支)
  • git rm --cached 分支名/develop 从暂存区删除分支
  • git branch -d 分支名 删除分支(分支被合并后才允许删除)/(-D强制删除)
  • git merge 来源分支 合并分支
  • git rest --hard commitID 从git仓库中将指定的更新记录恢复出来,覆盖暂存区和工作区

主分支(master) 第一次向git仓库中提交更新是自动产生的分支

开发分支(develop) 作为开发的分享,是基于master分支创建的

功能分支(feature) 作为开发具体功能的分支,基于开发分支创建

分支间的关系
功能分支 -> 开发分支 -> 主分支

暂时保存更改

提取分支上所有的改动并且存储起来,可以让开发人员有一个干净的工作副本,临时去网其他工作

应用场景:分支临时切换
*存储临时改动:git stash
*恢复改动:git stash pop

git远程分支

拉取远程git仓库里的指定分支到本地(本地不存在的分支)

  • git checkout -b 本地分支 origin/远程分支 拉取远程里的分支(本地不存在)
  • git checkout 分支名 切换分支

若出现提示:

fatal: Cannot update paths and switch to branch ‘远程分支’ at the same
time. Did you intend to checkout ‘origin/远程分支’ which can not be
resolved as commit?

表示拉取不成功

则需要先执行

  • git fetch

在执行

  • git checkout -b 本地分支名 origin/远程分支名

本地检出新分支并推送到远程

  • git checkout -b develop 分支名 创建并切换本地分支
    *[相当于 git branch dev //创建分支
    git checkout dev //选择分支
    ]
  • 该分支是从当前分支检出的,所以文件内容与当前分支一样
  • git branch origin develop 创建远程分支
  • git push --set-upstream origin 分支名 推送本地分支到远程仓库

如果远程分支已存在,就在创建本地分支时与其关联

  • git checkout -b 本地分支 origin/远程分支

合并分支

切回master

  • git checkout master
  • git merge 本地分支 合并分支
  • git push origin master 推送

删除分支

  • git branch -d dev //删除本地分支

  • git push origin -d dev //删除远程分支

git使用小结(本地分支与远程分支、git命令)的更多相关文章

  1. Git 操作本地分支与远程分支

    1 查看本地分支 git branch 2 查看远程分支 git branch -a 3 新建远程分支 git checkout -b developr git push origin develop ...

  2. git 本地分支与远程分支

    github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pull origin dev 本地分支与远程分支相关联 在本地 ...

  3. git 本地分支与远程分支关联的一种方法

    github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pull origin dev 本地分支与远程分支相关联 在本地 ...

  4. Git新建本地分支与远程分支关联问题:git branch --set-upstream

    Git新建本地分支与远程分支关联问题:git branch --set-upstream git在本地新建分支, push到remote服务器上之后,再次pull下来的时候,如果不做处理会报以下提示: ...

  5. git本地分支与远程分支

    github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pull origin dev 本地分支与远程分支相关联 在本地 ...

  6. git 创建本地分支与远程分支

    早上抽空整理了下git常用操作,偶尔看看加深下印象吧: 如果github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pu ...

  7. 删除本地git的远程分支和远程删除git服务器的分支【转】

    转- 删除本地git的远程分支和远程删除git服务器的分支 在项目中使用git管理代码后,有些时候会创建很多不同名称的分支,以此区分各个分支代码功能. 而随着代码的合并,以前的分支就可能不再需要保存了 ...

  8. [Git] 将本地分支与远程分支关联

    . . . . . 在本地工程中添加Git,并将其与远程的空库关联起来,只需如下几步. 1. 创建空库 $ git init Initialized empty Git repository in D ...

  9. git 本地分支和远程分支改名字

    1.将本地分支进行改名: git branch -m old_branch new_branch 2.将本地分支的远程分支删除: git push origin :old_branch 3.将改名后的 ...

随机推荐

  1. Arduino+温度、湿度传感器

    Arduino语言注解Arduino语言是建立在C/C++基础上的,其实也就是基础的C语言,Arduino语言只不过把AVR单片机(微控制器)相关的一些参数设置都函数化,不用我们去了解他的底层,让我们 ...

  2. Python os.major() 方法

    概述 os.major() 方法用于从原始的设备号中提取设备major号码 (使用stat中的st_dev或者st_rdev field).高佣联盟 www.cgewang.com 语法 major( ...

  3. HTML <html> xmlns 属性

    实例 一个简单的 XHTML 文档,带有最少的必需标签: <html xmlns="http://www.w3.org/1999/xhtml"><head> ...

  4. PHP str_split() 函数

    实例 把字符串 "Hello" 分割到数组中: <?php print_r(str_split("Hello")); ?>高佣联盟 www.cgew ...

  5. PDOStatement::errorCode

    PDOStatement::errorCode — 获取跟上一次语句句柄操作相关的 SQLSTATE(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0) 说明 语法 st ...

  6. 2020牛客暑期多校训练营 第二场 J Just Shuffle 置换 群论

    LINK:Just Shuffle 比较怂群论 因为没怎么学过 置换也是刚理解. 这道题是 已知一个置换\(A\)求一个置换P 两个置换的关键为\(P^k=A\) 且k是一个大质数. 做法是李指导教我 ...

  7. 打造静态分析器(二)基于Asp.Net Core 3.0的AspectCore组件检测

    上一篇,我们打造了一个简单的分析器,但是我们实际使用分析器就是为了对项目做分析检测,增加一些非语法的自检的 比如Asp.Net Core 3.0的替换依赖注入检测 设计分析 我们创建一个默认的Asp. ...

  8. 华为云GaussDB(DWS)内存知识点,你知道吗?

    前言 在日常数据库的使用中,难免会遇到一些内存问题.此次博文主要向大家分享一些华为云数仓GaussDB(DWS)内存的基本框架以及基本视图的使用,以便遇到内存问题后可以有一个基本的判断. 注意,本篇博 ...

  9. 为写程序而生的连字字体 Fira Code

    Fira Code,等宽的编程连字字体 **等宽 ** 是指所有字符的宽度相同,如: W 和 i 用一样的宽度去显示 连字(ligatures)为文字排印的一个特性,比如「f」和「 i」放在一起的时候 ...

  10. excel-填充

    问题[1]:需要将一列元素的空全部填充为NULL 选定列->F5定位(推荐先定位行总数)->再次F5定位(选空值)->在选定后的一个框内输入NULL->ctrl+enter 完 ...