git 常用命令及问题

一、常用命令

git add filename

git add . 

git commit -m "messge"

git commit --amend   修改最近一次的提交

git push origin HEAD:refs/for/master

git clone url  

git checkout branchname 切换分支

git branch -r 查看远程仓库分支列表

git branch branchname 新建分支

git branch -v  查看分支列表

git pull 拉取远程仓库数据,并与本地指定的分支合并

git fetch 从远程仓库取来数据,但并不自动merge

git merge branchname  合并指定分支到当前分支

git pull 等同于 git fetch + git merge

git pull --rebase 等同于 git fetch + git rebase

git reset 回退版本,可以回退到指定的之前某次提交的版本,不涉及远程仓库

git reset --hard 彻底回退

git rebase branchname 变基,在指定分支上重新应用当前分支上的新提交,指定分支上会产生新提交,目的:维持线性的提交历史

git status 查看工作树状态

git log 查看提交日志

git stash 暂存未提交的修改

git stash apply 把最近的stash应用到工作区域

git stash pop 删除最近的stash

git stash list 查看stash列表

git stash drop 删除指定的stash

git config cmd

1. git init:创建空仓库/重新初始化已存在仓库

2. git config --local user.name zhaohualei 设置 git name

   git config --local user.email zhaohualei@hellobike.com 设置 git email

git config --list     检查已有的配置信息

二、 git 问题

    1. Q:  error: You have not concluded your merge (MERGE_HEAD exists).

    A: 1)git merge --abort 放弃合并

              2)pull 之前本地先提交代码

              3)用 git pull --rebase

    2. Q: 修改最近一次的提交

        A:   1) git add .

              2)  git commit --amend

              3)  git push origin HEAD:refs/for/master

    3. Q:  ERROR: missing Change-Id in commit message footer

    A: 1)  gitdir=$(git rev-parse --git-dir); scp -p -P 29418 zhaohualei@git.cheyaoshicorp.com:hooks/commit-msg  ${gitdir}/hooks/

        2) git commit --amend 

        3) git push origin HEAD:refs/for/master

    B: 1) 备份本地修改的内容

        2) git fetch --all

        3) git reset --hard origin/master

        4) git pull

        5)     备份内容替换本地内容,而后正常操作提交代码

    4.  Q:  CONFLICT (content): Merge conflict in README.md, Automatic merge failed; fix conflicts and then commit  the result.

  A: 1)  git status 查看文件状态

    2)vi filename   修改冲突文件

    3)  git add filename 再重新提交 

    4)  git commit -m "conflict description" 

    5)  git push origin HEAD:refs/heads/master

5. Q: 分支合并 注意事项

    A:  分支都提交之后,再合并

6. Q: git rebase -i 合并多个提交为 一个提交

    A: git rebase -i  选择要修改的提交 git rebase -i HEAD~2

     编辑 pick 为 squash,但保留第一次提交为pick,squash:是这个提交会被合并前一个提交

     解决冲突后, git add .

     git rebase --continue

    git push -f origin

7. Q: git stash、git add 区别

A: add 是为了 commit

stash 是为了方便操作,例如:切换分支时,保持工作区域的干净

9. Q: git merge、git rebase 区别

A: merge 从分支会多出一次commit,且产生了新的节点;rebase 从分支未产生新的commit,且没有形成新的节点

merge 提交是非线性的; rebase 提交是线性的

    

    

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

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

相关文章

DSD-DA

adversarial loss L a d v _{adv} adv​ g() denotes the project function,Gradient Reverse Layer(GRL). ROI features F ( r ) (r) (r) 补充信息 作者未提供代码

医院管理系统

私信我获取源码和万字论文,制作不易,感谢点赞支持。 医院管理系统 摘要 随着信息互联网信息的飞速发展,医院也在创建着属于自己的管理系统。本文介绍了医院管理系统的开发全过程。通过分析企业对于医院管理系统的需求,创建了一个计…

SpringBoot 整合 Avro 与 Kafka

优质博文:IT-BLOG-CN 【需求】:生产者发送数据至 kafka 序列化使用 Avro,消费者通过 Avro 进行反序列化,并将数据通过 MyBatisPlus 存入数据库。 一、环境介绍 【1】Apache Avro 1.8;【2】Spring Kafka 1.2&#xf…

Win10+Ubuntu20.04双系统重装Ubuntu22.04单系统

从去年 8 月美化 Ubuntu 系统后一直存在内核错误问题,但因为大部分功能还能正常使用,只是在 apt 时报错,所以一直逃避不想重装,直到最近 12 月新的开始,恰好设置的界面打不开得重装 gnome ,所以下定决心重装…

Linux:进程间通信之system V

一、共享内存 进程间通信的本质是让不同的进程看到同一份代码。 1.1 原理 第一步:申请公共内存 为了让不同的进程看到同一份资源,首先我们需要由操作系统为我们提供一个公共的内存块。 第二步:挂接到要通信进程的地址空间中 &#xff…

Vue进阶之单组件开发与组件通信

书接上篇,我们了解了如何快速创建一个脚手架,现在我们来学习如何基于vite创建属于自己的脚手架。在创建一个新的组件时,要在新建文件夹中打开终端创建一个基本的脚手架,可在脚手架中原有的文件中修改或在相应路径重新创建&#xf…

【Linux网络编程】第四弹---构建UDP服务器与字典翻译系统:源码结构与关键组件解析

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】【Linux网络编程】 目录 1、UdpServer.hpp 1.1、函数对象声明 1.2、Server类基本结构 1.3、构造函数 1.4、Start() 2、Dict.hpp…

数字IC后端设计实现之分段长clock tree经典案例

最近发现很多读者问到分段长clock tree的做法,小编今天给大家分享几个SoC芯片中复杂时钟结构设计的分段长clock tree的应用案例。希望对各位的学习和工作有所助益。 数字后端设计实现之时钟树综合实践篇 数字IC后端实现专家都具备哪些技能?&#xff08…

计算机毕业设计Spark+SpringBoot旅游推荐系统 旅游景点推荐 旅游可视化 旅游爬虫 景区客流量预测 旅游大数据 大数据毕业设计

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

EasyMedia播放rtsprtmp视频流

学习链接 MisterZhang/EasyMedia - gitee地址 EasyMedia转码rtsp视频流flv格式,hls格式,H5页面播放flv流视频 文章目录 学习链接介绍步骤easydarwin启动rtsp服务,ffmpeg推送摄像头(模拟rtsp视频流)nginx添加rtmp支持…

【Linux】开启你的Linux之旅:初学者指令指南

Linux相关知识点可以通过点击以下链接进行学习一起加油! 在 Linux 开发中,GDB 调试器和 Git 版本控制工具是开发者必备的利器。GDB 帮助快速定位代码问题,Git 则提供高效的版本管理与协作支持。本指南将简明介绍两者的核心功能与使用技巧&…

SpringBoot-问题排查 Controller全局打印入参,返回值,响应时间,异常日志

问题: 想要打印每次请求的入参,返回值,响应时间,异常日志,如果给每个方法挨个添加打印日志非常麻烦 解决方案: 使用切面的方式将所有的Controller每个方法加入切入点使用环绕通知的方式可以在切入点执行前后执行切面,符合我们的需求在方法执行前后打印相关日志忽略LogIgnore注解…

mysql数据库varchar截断问题

用了这么多年mysql数据库,才发现varchar是可以截断的,而且是在我们线上数据库。个人觉得dba的这个设置是非常有问题的,用户往数据库里存东西,就是为了以后用的,截断了存放,数据不完整,就用不了了…

C++草原三剑客之一:继承

为王的诞生献上礼炮吧! 目录 1 继承的概念及其定义 1.1 继承的概念 1.2 继承的定义 1.2.1 定义格式 1.2.2 继承方式以及继承基类成员访问方式的变化 1.3 继承类模板 2 基类和派生类之间的转换 3 继承中的作用域 3.1 隐藏规则 3.2 两道考察继承作用的相关…

Crash-SQLiteDiskIOException

目录 相关问题 日志信息 可能原因 问题排查 相关问题 蓝牙wifi无法使用 日志信息 可能原因 磁盘空间不足:当设备上的可用存储空间不足时,SQLite无法完成磁盘I/O操作,从而导致SQLiteDiskIOException。 数据库文件损坏:如果数…

6.824/6.5840 Lab 1: Lab 3: Raft

漆昼中温柔的不像话 静守着他的遗憾啊 旧的摇椅吱吱呀呀停不下 风卷走了满院的落叶落花 ——暮色回响 完整代码见: https://github.com/SnowLegend-star/6.824 在完成Lab之前,务必把论文多读几遍,力求完全理解Leader选举、log日志等过程。 …

【C++动态规划 BFS 博弈】3283. 吃掉所有兵需要的最多移动次数|2473

本文涉及知识点 C动态规划 CBFS算法 数学 博弈 LeetCode3283. 吃掉所有兵需要的最多移动次数 给你一个 50 x 50 的国际象棋棋盘,棋盘上有 一个 马和一些兵。给你两个整数 kx 和 ky ,其中 (kx, ky) 表示马所在的位置,同时还有一个二维数组 …

6.824/6.5840 Lab 2: Key/Value Server

故事里能毁坏的只有风景 谁也摧毁不了我们的梦境 弦月旁的流星划过了天际 我许下 的愿望 该向谁 去说明 ——我是如此相信 完整代码见: https://github.com/SnowLegend-star/6.824 还是那句话,尽量只是参考思路而不是照抄 先阅读几遍实验说明的Introd…

Linux-异步IO和存储映射IO

异步IO 在 I/O 多路复用中,进程通过系统调用 select()或 poll()来主动查询文件描述符上是否可以执行 I/O 操作。而在异步 I/O 中,当文件描述符上可以执行 I/O 操作时,进程可以请求内核为自己发送一个信号。之后进程就可以执行任何其它的任务…

R 语言科研绘图第 1 期 --- 折线图-基础

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…