git本地库和远程库的相关操作命令

目录

一、分支概念:

二、 本地库分支管理:

1. 查看分支情况:

命令1:git branch

2. 新建分支

命令1: git branch <分支名>

命令2: git branch <新建分支名>  <源分支名>

命令3:git switch -c <分支名>

​编辑

命令4:git checkout -b <分支名>

3. 切换分支

命令1: git switch <分支名>

命令2: git checkout <分支名>

 4. 删除分支

命令1: git branch -d <分支名>

5. 修改本地分支

三、远程库分支管理

1.查看分支情况:

命令1: git branch -r

命令2: git remote show <远程库名>

 2.新建远程分支

方法1:在本地新建一个分支后,推送到远程库。所以需要关联远程库和本地库

3. 删除远程库分支

命令1: git push <远程库名> --delete <分支名>

四、 关联本地库和远程库

1. 查看本地和远程库的关联信息

命令1: git remote -v

命令2: git branch -vv

命令3: git remote show <库名>

命令4: cat .git/cinfig

2. 关联本地库和远程库

 3. 删除远程库

 五、本地库和远程库分支的关联

1. 查看本地分支和远程分支的关联情况

命令1: git remote show <远程库名>

 命令2: git branch -vv

 命令3: cat .git/config

2. 关联本地分支和远程分支

命令1: git checkout -b <本地分支> <远程分支>

 命令2:git branch -u origin/<分支名>

命令3: git branch --set-upstream-to=origin/ <本地branch>

 命令4: git push -u origin <分支名>


一、分支概念:

可以看成是当前工作目录的副本。通常就是基于主线master(创建本地库时默认的),创建一个分支(副本)。然后在分支上开发,避免影响主线master的代码

二、 本地库分支管理:

1. 查看分支情况:

命令1:git branch

# 查看分支情况, 只有当前分支的所有名字

git branch

# 查看分支情况, 还有关联信息,版本信息

git branch -vv

# 还有很多参数, 实现不同内容

# --upset-upstream

2. 新建分支

命令1: git branch <分支名>

基于当前的分支,新建一个分支(副本)

git branch <分支名>

命令2: git branch <新建分支名>  <源分支名>

例如: 在dev分支上,基于 branch_3 , 新建 branch_1

命令3:git switch -c <分支名>

基于当前分支,新建一个分支(副本),并切换到新建的分支上

git switch -b <分支名>

命令4:git checkout -b <分支名>

和git switch -b 一样。 基于当前分支,新建一个分支(副本),并切换到新建的分支上

3. 切换分支

命令1: git switch <分支名>

命令2: git checkout <分支名>

 4. 删除分支

命令1: git branch -d <分支名>

5. 修改本地分支

5.1、 修改分支名

命令1: git branch -m <原分支名>  <目标分支名>


三、远程库分支管理

远程库即中心库:代码统一存放中心。

常用的代码托管平台有: github,gitlab,gitee

远程库和本地库一样,也是可以创建分支。

1.查看分支情况:

命令1: git branch -r

git branch -r

命令2: git remote show <远程库名>

这个命令查看的信息,还有远程库信息,本地分支的push配置项值

git remote show <远程库名>

# 例如默认的远程库名是origin

git remote show origin


 2.新建远程分支

方法1:在本地新建一个分支后,推送到远程库。所以需要关联远程库和本地库

关联方法间下文的第四章

git push <远程库名> <本地分支名>

3. 删除远程库分支

命令1: git push <远程库名> --delete <分支名>

# 因为 默认库名是 origin。 所以常用
# 分支名不用带库名
git push origin <分支名>

 演示效果:

4. 更新远程库的分支信息(刷新)

git remote update origin --prune


前提条件: 你在github或者其他代码托管平台中创建了项目(即远程库)。

远程库名建议和本地开发的项目名一致

 

很明显,本地库和远程库之间的通信需要知道各自的地址吧,就需要建立本地库和远程库之间的联系。

四、 关联本地库和远程库

1. 查看本地和远程库的关联信息

命令1: git remote -v

命令2: git branch -vv

查看分支情况, 包括远程库分支和本地库分支的关联情况。 里面也有远程库的信息。

git branch -vv

命令3: git remote show <库名>

 git remote show origin

命令4: cat .git/cinfig

2. 关联本地库和远程库

git remote add <库名> <git远程库地址>

远程库一般就叫做 origin。 可以叫其他的,但是默认大家都是用origin。

所以默认的命令是:  git remote add origin <远程库地址>

git remote add origin <git远程库地址>

git地址通常是SSH 或者HTTP。 公司常用HTTP。 

ssh地址格式:git@托管平台:<你的用户名>/<远程项目名>.git

git@gitee.com:jungun/git_skills.git

HTTP地址格式:

https://gitee.com/jungun/git_skills.git

添加演示:

 3. 删除远程库

删除远程库和本地库的关联关系: git remote rm <库名>

git remote rm <库名>

例如删除origint这个远程库

 五、本地库和远程库分支的关联

本地库和远程库分支建立了关联后,两者间的交互动作,例如:pull,push。进行交互时就不用指定各自的地址。即直接 git push, git pull就可以从远程库分支拉去代码到本地分支了,也方便后续的版本控制和回溯。

1. 查看本地分支和远程分支的关联情况

命令1: git remote show <远程库名>

 命令2: git branch -vv

 命令3: cat .git/config

2. 关联本地分支和远程分支

命令1: git checkout -b <本地分支> <远程分支>

创建一个本地分支,并和指定的远程分支关联。

若是有报错

fatal: 'origin/master' is not a commit and a branch 'branch_1' cannot be created from it

 是因为本地库创建分支时,是基于远程库分支的,所以需要进行网络交互。执行即可

git fetch origin

 

 命令2:git branch -u origin/<分支名>

关联当前本地分支和指定的远程分支

示例:

命令3: git branch --set-upstream-to=origin/<branch> <本地branch>

指定本地分支和指定远程分支关联上

示例: 将本地分支 branch_new 关联上远程分支 origin/test2

 命令4: git push -u origin <分支名>

当前分支的内容推送到 远程分支,并建立关联

总结:

git checkout -b 用于在新建本地分支时,直接关联上远程分支。常基于稳定的远程代码分支,例如远程master,或dev分支

git push -u, git branch -u 都是在本地开发后,发现没有关联远程分支,或者原有的关联分支不合理,需要变动时使用,只能更改当前分支的关联情况。例如基于本地库分支checkout开发完毕后,要推送到指定的远程分支。

git branch --set-upstream-to 和git push -u ,git branch -u类似,不过更为灵活,不限于当前的本地分支。


 六、本地库和远程库的交互动作,push,pull

将本地分支代码推送到远程库分支标准格式是: git push origin <分支名>

 git push origin <分支名> 

如果本地分支已经和远程分支建立了关联,则直接 git push

git push

pull类似。

下文:准备总结下分支间的操作和管理策略

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/52617.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

打印Winform控件实现简陋版的分页打印(C#)

本文的代码可以从这里获取&#xff1a;winformDemo.rar 张祥裕/分享的资源名称 - Gitee.com 作者的水平有限&#xff0c;如有错误&#xff0c;望指正。 为了简单起见&#xff0c;纸张大小&#xff0c;打印机等信息按照默认的来&#xff0c;本文的实现方案是&#xff1a;打印Pa…

RN 设置背景图片(使用ImageBackground组件)

在RN版本0.46版本的时候添加了ImageBackground控件。ImageBackground可以设置背景图片&#xff0c;使用方法和image一样&#xff0c;里面嵌套了其他的组件 import React from "react"; import { ImageBackground, StyleSheet, Text, View } from "react-native…

可以写进简历的kafka优化-----吞吐量提升一倍的方法

冲突 在看到项目工程里kafka 生产端配置的batch.size为500&#xff0c;而实际业务数据平均有1K大小的时候&#xff1b;我有点懵了。是的&#xff0c;这里矛盾了&#xff1b;莫非之前的作者认为这个batch.size是发送的条数&#xff0c;而不是kafka生产端内存缓存记录的大小&…

脑电信号处理与特征提取——5.频谱分析和时频分析(张治国)

目录 五、频谱分析和时频分析 5.1 频谱估计 5.1.1 基本概念 5.1.2 频谱估计方法&#xff1a;周期图 5.1.3 频谱估计方法&#xff1a;Welch法 5.1.4 频谱估计方法的比较 5.1.5 频谱特征提取 5.2 时频分析 5.2.1 短时傅里叶变换 5.2.2 连续小波变换 5.3 事件相关同步…

【能量管理系统( EMS )】基于粒子群算法对光伏、蓄电池等分布式能源DG进行规模优化调度研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

vuejs源码阅读之代码生成器

代码生成器是模版编译的最后以后&#xff0c;它的作用是将AST转换成渲染函数中的内容&#xff0c;这个内容可以称为代码字符串。 代码字符串可以被包装在函数中执行&#xff0c;这个函数就是我们通常说的渲染函数。 渲染函数被执行之后&#xff0c;可以生成一份VNode&#xf…

爬取微博热搜榜并进行数据分析

设计方案 爬虫爬取的内容 &#xff1a;爬取微博热搜榜数据。 网络爬虫设计方案概述 用requests库访问页面用get方法获取页面资源&#xff0c;登录页面对页面HTML进行分析&#xff0c;用beautifulsoup库获取并提取自己所需要的信息。再讲数据保存到CSV文件中&#xff0c;进行…

day48-Random Image Feed(随机图片显示)

50 天学习 50 个项目 - HTMLCSS and JavaScript day48-Random Image Feed&#xff08;随机图片显示&#xff09; 效果 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport&…

EIP-2535 Diamond standard 实用工具分享

前段时间工作对接到了这标准的协议&#xff0c;于是简单介绍下这个标准分享下方便前端er使用的调用工具 一、标准的诞生 在写复杂逻辑的solidity智能合约时&#xff0c;经常会碰到两个问题&#xff0c;升级和合约大小限制。 升级目前有几种proxy模式&#xff0c;通过delegateca…

如何选择合适的客户管理系统(CRM系统)

本篇文章将介绍如何选择适合您业务的客户管理系统。我们将讨论如何考虑不同的需求、功能和预算&#xff0c;以及如何在众多选项中选择最佳解决方案。 一、选择合适的客户管理系统的重要性 1、提高工作效率: 客户管理系统可以简化许多繁琐、重复的工作流程&#xff0c;如数据输…

Spring Alibaba Sentinel实现集群限流demo

1.背景 1.什么是单机限流&#xff1f; 小伙伴们或许遇到过下图这样的限流配置 又或者是这样的Nacos动态配置限流规则&#xff1a; 以上这些是什么限流&#xff1f;没错&#xff0c;就是单机限流&#xff0c;那么单机限流有什么弊端呢&#xff1f; 假设我们集群部署3台机器&a…

【*1900 图论+枚举思想】CF1328 E

Problem - E - Codeforces 题意&#xff1a; 思路&#xff1a; 注意到题目的性质&#xff1a;满足条件的路径个数是极少的&#xff0c;因为每个点离路径的距离<1 先考虑一条链&#xff0c;那么直接就选最深那个点作为端点即可 为什么&#xff0c;因为我们需要遍历所有点…

桥接模式——处理多维度变化

1、简介 1.1、概述 桥接模式是一种很实用的结构型设计模式。如果软件系统中某个类存在两个独立变化的维度&#xff0c;通过该模式可以将这两个维度分离出来&#xff0c;使两者可以独立扩展&#xff0c;让系统更加符合单一职责原则。与多层继承方案不同&#xff0c;它将两个独…

nosql之redis集群

nosql之redis集群 一.redis集群 1.单节点redis服务器带来的问题 &#xff08;1&#xff09;单点故障、服务不可用 &#xff08;2&#xff09;无法处理大量的并发数据请求 &#xff08;3&#xff09;数据丢失 2.集群redis &#xff08;1&#xff09;提供在多个redis节点间…

网络运维基础问题及解答

前言 本篇文章是对于网络运维基础技能的一些常见问题的解答&#xff0c;希望能够为进行期末复习或者对网络运维感兴趣的同学或专业人员提供一定的帮助。 问题及解答 1. 列举 3 种常用字符编码&#xff0c;简述怎样在 str 和 bytes 之间进行编码和解码。 答&#xff1a;常用的…

【数学建模】时间序列分析

文章目录 1. 条件2. 模型分类3. SPSS处理时间序列 1. 条件 1.使用于具有时间、数值两种要素 2.数据具有周期性可以使用时间序列分解 2. 模型分类 叠加模型【YTSCI】 序列的季节波动变化越来越大&#xff0c;反映变动之间的关系发生变化乘积序列【YTSC*I】 时间序列波动保持恒…

Scaling Instruction-Finetuned Language Models

Paper name Scaling Instruction-Finetuned Language Models Paper Reading Note Paper URL: https://arxiv.org/pdf/2210.11416.pdf TL;DR 2022 年谷歌出的文章&#xff0c;对指令微调的影响因素进行分析&#xff0c;提出了一些提升指令微调效果的方案。与该文章一起出品…

Linux--验证命令行上运行的程序的父进程是bash

1.输入以下代码&#xff1a; #include <stdio.h> #include <unistd.h> int main() {printf("hello world: pid: %d, ppid: %d\n",getpid(),getppid());return 0; }2.编译得到可执行程序​​​ 3.运行得到ppid 4.输入指令 ps axj | head -1 &&am…

【图论】差分约束

一.情景导入 x1-x0<9 ; x2-x0<14 ; x3-x0<15 ; x2-x1<10 ; x3-x2<9; 求x3-x0的最大值&#xff1b; 二.数学解法 联立式子2和5&#xff0c;可得x3-x0<23;但式子3可得x3-x0<15。所以最大值为15&#xff1b; 三.图论 但式子多了我们就不好解了&#xff0…

Linux标准库API

目录 1.字符串函数 2.数据转换函数 3.格式化输入输出函数 4.权限控制函数 5.IO函数 6.进程控制函数 7.文件和目录函数 1.字符串函数 2.数据转换函数 3.格式化输入输出函数 #include<stdarg.h>void test(const char * format , ...){va_list ap;va_start(ap,format…