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. 渲染导航菜单的同时给每个菜单绑定不同的router跳转

    这个问题一开始的时候,我总想着router跳转只有两种方式 一种@click,一种router-link 然后我想着@click,绑定一个事件,事件下面无法确定我当前是哪个菜单,解决不了. 然后< ...

  2. 巩固复习(Django最基础的部分_具体查看官方文档)

    Django学习路1 1.脚本不能随便运行,没准 linux 运行完就上不去了 2.pip 在 linux 上 写 pip3 同理 python 写为 python3 3.在 pycharm 上安装库 ...

  3. Linux最常用的基本操作复习

    .ctrl + shift + = 放大终端字体 .ctrl + - 缩小终端字体 .ls 查看当前文件夹下的内容 .pwd 查看当前所在的文件夹 .cd 目录名 切换文件夹 .touch 如果文件不 ...

  4. PHP metaphone() 函数

    实例 计算 "World" 的 metaphone 键: <?php高佣联盟 www.cgewang.comecho metaphone("World") ...

  5. ElasticSearch 基础入门 and 操作索引 and 操作文档

    基本概念 索引: 类似于MySQL的表.索引的结构为全文搜索作准备,不存储原始的数据. 索引可以做分布式.每一个索引有一个或者多个分片 shard.每一个分片可以有多个副本 replica. 文档: ...

  6. luogu P4206 [NOI2005]聪聪与可可 期望dp 记忆化搜索

    LINK:聪聪与可可 这道题的核心是 想到如何统计答案. 如果设f[i][j]表示第i个时刻... 可以发现还需要统计位置信息 以及上一次到底被抓到没有的东西 不太好做. 两者的位置都在变化 所以需要 ...

  7. tensorflow2.0 实现gpu和cpu切换

      昨天把GPU版本的tf2.0 安装成功之后,现在所有的代码运行居然都在gpu上跑了,并且在对gpu使用情况没有限制的条件下,既然gpu内存跑满了,代码就崩了怎么样才能随心所欲的指定代码是在cpu还 ...

  8. Devops 原始思想 所要实现的目标

    解释: DevOps(Development和Operations的组合词)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整合. 它 ...

  9. react 样式冲突解决方案 styled-components

    前置 在 react 中解决组件样式冲突的方案中,如果您喜欢将 css 与 js 分离,可能更习惯于 CSS-Modules:如果习惯了 Vue.js 那样的单文件组件,可能习惯于使用 styled- ...

  10. Hexo博客部署到远程仓库(Conding、Gitee、Github)

    一.本地环境搭建 1.安装Git Git可以有效.高速的处理各种项目版本管理.也就是用来管理你的hexo博客文章,上传到GitHub的工具. Git下载地址 安装好了之后使用git -version查 ...