git开发必备命令

2023-11-09

使用git进行代码管理时,虽现有的开发工具对git的集成程度都比较高,但是会使用git命令行,在很多时候也能派上用场,况且技多不压身。以下是目前作为git项目开发者必备的命令。

  1. 拉项目
    开发一个项目,首先需要拉取该项目在本地,再切到本地开发分支上,命令为:
git clone [项目url]    //clone项目到本地

git checkout -b [local_branch] [remote branch]    //拉取远程分支作为本地分支

git branch -a   //查看该项目的所有分支

git checkout [branch]    //切换分支

  1. 提交代码
    开发需要将代码提交到远程分支,过程分为三步:首先将代码添加到暂存区,再提交到本地仓库(本地分支),最后推到远程分支上。提交代码涉及的相关指令如下:
git status   //查看本地文件状态,标红的文件按是没有再暂存区的,标绿的是在暂存区的。

git add [文件]  //添加文件到暂存区

git add .  //添加所有文件到暂存区

git commit -m "提交信息"  //将暂存区的文件提交到本地仓库

git push [remote]  //将本地仓库更改提交到远程仓库

  1. 合并分支
    合并分支是将一个分支的代码合并到另一个分支上,通常分为三步:将一个分支拉到本地,再拉取远程分支,合并本地分支到远程分支上,最后提交代码;(还有其他本地合本地皆可,本地取一种情况说明),该流程涉及指令如下:
git clone [项目url]    //clone项目到本地

git checkout -b [local_branch A] [remote branch A]    //拉取远程分支作为本地分支

git fetch origin  	//更新分支

git checkout [remote branch B] 	//拉取远程分支B

git merge [remote branch A] 	//合并本地分支A到远程分支B

git status   //查看本地变化

git add . //添加到暂存区

git commit -m "commit message"  //合并完后,提交到本地仓库

git push [remote B]	//合并完后将代码提交到远程分支上
  1. 解决冲突
    通常多人协作的任务,提交代码或者合并分支时,都会有冲突发生,解决冲突时为了保留其他人的代码和自己的代码,需要本地慎重解决,在合并代码解决冲突后,有时代码提交的指令发生了变化,需使用以下指令将本地仓库的代码提交到远程分支上,以下为流程指令:
git commit -m "commit message"  //合并完后提交,上面流程复用2、3的

git push origin HEAD:[branch-name]   //提交后推到远程分支,此时需要加HEDAD:
  1. 代码回退
    代码回退包含两种情况,一是回退代码到某一版本,某一版本以后的代码都不保存,二是只回退某一版本代码,对齐它版本代码不影响。对于多人协作开发任务,更推荐使用第二种方法回退代码。回退代码流程同样分为三步:首先查看日志,确定要回退的代码版本,再回退到该版本,最后提交代码,现对该两种方法流程都给出指令说明:
1)回退到某一版本
git log  //查看HEAD日志

git reset --hard [目标版本号]   //目标版本号为HEAD编号,一般输前几位就可

git push -f  //将代码强制推送到远程仓库中

2)回退某一版本代码
git log  //查看HEAD日志

git revert [要回退的版本号]  //回退该版本代码并生成新的版本号

git status //查看本地变化的文件,是回退那个版本变化的文件,将其改回来了

git add .  //提交问价难道暂存区

git commit -m "" //提交代码到本地仓库

git push  //上传到远程分支

以上五个操作涉及的指令基本能涵盖工作上能遇到的绝大多数命令,此外还有git其他指令此处未包含的,若后续发现很常用,再进行补充。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

git开发必备命令 的相关文章

随机推荐

  • UVC摄像头-学习

    多摄像头拍摄实现 从人脸识别入手 已经实现打开双uvc摄像头 需要支持UVC 支持USB OTG接口驱动 通过OTG扩展多个USB接口 应用层调用JNI函数 可以实现实时显示 图像拍摄 视频录制等功能 UVCCamera 听名字就知道使用U
  • 入门靶机渗透之Me And My Girlfriend

    靶场介绍 靶场下载地址 点击进入下载界面 下载 ova文件 在VMware中导入该虚拟机 导入完成后开启虚拟机 这个靶场背景告诉我们有一对恋人 即 Alice 和 Bob 这对情侣原本很浪漫 但自从 Alice 在一家私人公司 Ceban
  • Arduino IDE编译烧写ESP32 CAM

    一 安装Arduino IED 到官网下载IDE 二 安装ESP32 工具 打开菜单 文件 首选项 在设置页 附加开发板管理器网址 添加 https dl espressif com dl package esp32 index json
  • 异常检测的总结性介绍

    1 异常检测 1 1 什么是异常值 在机器学习中 异常检测和处理是一个比较小的分支 或者说 是机器学习的一个副产物 因为在一般的预测问题中 模型通常是对整体样本数据结构的一种表达方式 这种表达方式通常抓住的是整体样本一般性的性质 而那些在这
  • 练习四、把数组扁平;获取页面所用标签,并去重

    功能描述 题目一 将多层嵌套数组降低层级 比如 1 2 3 0 4 5 10 200 3 扁平到 1 2 3 0 4 5 10 200 3 题目二 获取页面所用标签 比如应含有html多种标签 并且去重 主要考点 题目一 判断是否为数组的方
  • Activity启动流程详解

    普通Activity创建也就是平常我们在代码中采用startActivity Intent intent 方法来创建Activity的方式 总体流程如下图 启动过程设计到两个进程 本地进程和系统服务进程 本地进程也就是我们的应用所在进程 系
  • 蓝桥 小明的游戏 反nim 博弈论

    题目描述 蓝桥公司给他们的员工准备了丰厚的奖金 公司主管小明并不希望发太多的奖金 他想把奖金留给智慧的人 于是他决定跟每一个员工玩一个游戏 规则如下 桌面上一共有 n 堆一元钱 双方轮流行动 由小明先行动 每次行动从某一堆钱中拿走若干元 至
  • 刷脸支付服务商的到来彻底将其颠覆

    互联网技术的发展 人工智能的不断升级 人们的生活正在变得越来越便捷 刷脸支付的优势就是体验度较好 用户较易接受 由于人脸识别根据摄像头的提高而提高 而且算法的改进会让刷脸核验在极短时间内完成 让用户觉得这技术很很便捷 而指纹 虹膜由于更多地
  • 活动回顾|多模态 AI 开发者的线下聚会@深圳站(内含福利)

    回顾来了 4 月 22 日 由 Jina AI 和 OpenMMLab 联合主办的 多模态 AI Office Hours 深圳站圆满结束 迎来了将近 60 位开发者的热情参与 现场不仅有别开生面的 开发者集市 供大家打卡赢取好礼 更有四场
  • 2023华为OD机试Python【最接近中位数的索引】

    前言 本题使用Python解答 如果需要Java版本答案 请参考以下链接 点击此处跳转 题目 假设我们有一个数组X和正整数K 满足以下表达式 X i x i 1 X i K 1 结果最接近于数组中位数的下标i 如果有多个i满足条件 请返回最
  • SuspendThread 造成程序死锁的一个例子

    msdn对SuspendThread 的说明 This function is primarily designed for use by debuggers It is not intended to be used for thread
  • 从零开始学GitHub【第三篇】

    GitHub 需要搭梯子么 印象中 GitHub 之前确实总是断断续续的访问不了 不过在13年初的时候有段时间最严重 一度被封了 当时李开复老师再也忍无可忍 公开发了一条抗议 GitHub 被封的微博 这事我印象很深 因为我是12年底加入的
  • Qt关于lineEdit的输入格式设置

    设置提示文字 ui gt lineEdit gt setPlaceholderText 联机游戏欢乐多 仅能输入整数 无限制 ui gt lineEdit gt setValidator 0 仅能输入整数 ui gt lineEdit gt
  • 移动端页面适配

    目录 一 移动端页面适配 1 什么是移动端页面适配 2 移动端页面适配的设计方向 二 0 适配 1 简介 2 缺陷 三 等比缩放 1 viewport 缩放方案 2 动态 REM 方案 3 VW 适配方案 4 适配方案对比 四 相对单位 e
  • 零基础想转行Python?新手应该注重学习哪方面的技术?

    大家都用Python做什么 做网站后台 有大量的成熟的框架 如django flask bottle tornado 写网络爬虫 Python写爬虫很简单 库很健全 科学计算 参加数学建模大赛 完全可以替代r语言和MATLAB 数据挖掘 机
  • mybatis sql xml文件读取源码分析

    在执行一个自定义sql语句时 dao对应的代理对象时如何找到sql 也就是dao的代理对象和sql之间的关联关系是如何建立的 在mybatis中的MybatisPlusAutoConfiguration类被 Configuration注解
  • 《DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks》论文阅读之DeblurGAN

    前言 现实生活中 大多数图片是模糊不清的 试想一下 追剧时视频不清晰 看着都很捉急 何况现实中好端端的一幅美景 美女也可以 被抓拍得不忍直视 瞬间暴躁 拍照时手抖 或者画面中的物体运动都会让画面模糊 女友辛辛苦苦摆好的各种Pose也将淹没在
  • uniapp设置动态背景图片

    ps 小程序在运行时 背景图片使用本地路径 在开发工具中可以正常显示 但是在真机调试时无法显示 解决 使用远程路径的方式
  • ros学习中遇到**[ERROR] [1552999261.807795886, 0.001000000]:**

    在ROS中学习SLAM及NAVIGATION时遇到以下问题 ERROR 1552999261 807795886 0 001000000 GazeboRosControlPlugin missing while using DefaultR
  • git开发必备命令

    使用git进行代码管理时 虽现有的开发工具对git的集成程度都比较高 但是会使用git命令行 在很多时候也能派上用场 况且技多不压身 以下是目前作为git项目开发者必备的命令 拉项目 开发一个项目 首先需要拉取该项目在本地 再切到本地开发分