gitlab常用的命令

2023-11-14

引言

使用gitlab提交代码的时候,若是使用的命令行,则需要输入命令行指令。下面是日常遇到的常用的命令行指令。

详情

git命令行常用指令的使用:

  1. git status #上次提交后是否对文件再做了修改项目1
  2. git add . #添加所有的变动
  3. git checkout -b 文件夹名称 #创建本地分支并切换分支 git checkout -b pr/ffr
  4. git commit -m “描述” #提交修改 git commit -m “修改什么”
  5. git merge origin/develop “本地分支” #合并origin/develop上别人所做的修改到自己的本地分支 git merge origin/develop pr/ffr
  6. git push origin “本地分支” #推送本地分支到远程,并建立联系 git push origin pr/ffr
  7. git rebase -i 编号 #合并多次提交,将前几次的提交合并为一次
  8. git checkout 分支名 #切换分支 git checkout pr/FFR-color git cherckout develop
  9. git pull #更新当前分支的状态
  10. git branch #列出本地分支
  11. git branch -a #列出本地分支与远程分支
  12. git branch -D 分支名 #删除分支(目前仅用于删除本地分支)
  13. git remote -v #可以查看远程仓库信息
  14. git branch 分支名 #仅仅创建 一个新分支,并不会自动切换到新分支中去
  15. git rebase --abort #退出git rebase
  16. git reset 提交编号 #git rebase -i 提交编号,之后出现错误,可以回退到之前未合并时的日志状态
  17. git commit --amend -m “描述” #修改上一次的提交的描述
  18. git stash #暂存上一次的修改,准备切换到其他的分支
  19. git stash pop #还原上一次的修改,将暂存的修改加入到新的分支
  20. 关于19和20命令的应用示例:
    应用实例:
    在分支ui/DiagnosticPage上修改了部分代码,但是中途需要更新develop上的代码,切换到分支develop上更新代码,后再切换到ui/DiagnosticPage上使用指令
    git stash pop,或者在develop上新建分支ui/bar,使用指令git stash pop.
  21. git reset HEAD #使暂存区的代码退回到最近一次的状态,应用场景,提交修改后,即git add .之后,想撤销,这时可以使用git reset HEAD退回到没有提交git add .之前工作区的修改不变,只是改变暂存区的状态
  22. git checkout 文件名 #可以回退到暂存区保存的文件
    应用场景:
    直接从develop更新的代码,git status查看状态,显示个别ui文件发生变化,但实际上没有改动ui文件。使用此git checkout 文件名 指令可以回退到
    暂存区的文件,即用暂存区的文件覆盖(替换)工作区的文件。
  23. git log --author=“名字” #查看指定人的提交记录(但是好像不全)
  24. git blame 文件名 #查看文件每一行的更改历史,包含修改文件的人名,时间等,这里的文件名为绝对路径或者相对路径。
  25. git log 文件名 #查看文件的更改历史。

git使用中常见问题

  1. git commit -m "xxxxx"中的提交内容写错了,想重新编写:
    git commit --amend #重新编辑提交的注释内容
  2. 删除远程分支,该分支只有自己一个人在使用,修改代码后,提交到远程服务器上(我是gitlab),发现提交的内容不对,想删掉重新提交
    git push origin --delete 分支名 #删除远程分支 git push origin --delete dsa/index
  3. 查看文件修改了那些内容
    git diff 文件绝对路径 #查看文件相对于最近一次所作的修改,文件绝对路径——指整个完整的文件路径
  4. 别人新建的分支,自己使用git branch查看本地分支,查看不到,使用git branch -r查看远程分支,若是分支能够查看到,这时切换到本地分支git checkout 本地分支,使用git pull没法拉取最新代码,实际上是没有建立本地分支与远程分支的联系,这时建立本地分支与远程分支的联系,使用指令:
    git branch --set-upstream-to=origin/本地分支名 远程分支名
    建立本地分支与远程分支的联系之后,使用git pull拉取最新的代码。
  5. 指定的文件回退到上一个版本,使用指令:
    git checkout [commit-id] 文件名(包含文件路径)
    commit-id的查看方式:
    git log 文件名

个人小结

以下仅为自己在当时所在公司的代码提交流程。
一个完整的提交过程为,(新建)切换到本地分支后,在本地分支开发,之后提交本地分支修改,提交前需合并别人在自己建的分支上的修改,切换到目标分支上develop,更新develop上别人所做的修改,
将本地develop上的修改,合并到自己建的分支上,有问题解决问题,运行程序看看是否有问题,合并最后一次合并develop与自己建的分支下提交的代码为一次提交,推送到远程自己建的分支,代码提交后发起merge request。
若最后已经将之前修改的代码合并,通过了代码审核,则可以切换到被开发的分支,更新git pull该分支的代码。
一次完整的代码开发后提交过程记录如下:
在自己的建的本地开发分支上
git add . #添加所有的变动
git commit -m “描述” #提交修改 git commit -m “修改什么”
git checkout 分支名 #切换开发分支 git cherckout develop
git pull #更新开发分支上别人所做的修改
git checkout 分支名 #切换到自己建本地开发分支 git checkout dsa/UItest
git merge origin/develop “本地分支” #合并origin/develop上别人所做的修改到自己的本地分支,有时候没有加origin git merge origin/develop dd/UItest
git log #查看日志
git rebase -i 提交编号 #合并为一次提交(本地合并)
git push origin 本地分支 #推送本地分支到远程分支

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

gitlab常用的命令 的相关文章

  • 从 github 中删除子项目提交

    我有两个存储库A and B 我错误地在我的机器上将仓库 B 克隆到了 A 内 我从存储库 B 中删除了所有代码 但是当我在源上从 A 推送并合并代码时 它还显示了子项目提交B在 Github 仓库上 我想从我的 master 上删除子项目
  • Visual Studio Code 内置故事,用于查看 git 提交历史记录并对其内容进行比较

    In this https stackoverflow com questions 37899765 how can i view the git history in visual studio code 60013101 noredir
  • Git:压缩 master 上提交的最简单方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 git 将最后 X 次提交压缩在一起 https stackoverflow com questions 5189560 how can i squash my last x commits
  • 未能将一些参考推送至 [email protected]

    当我尝试推送到 Heroku 存储库时收到此错误 我已经设置了autocrlf false在gitconfig中 但这个问题仍然存在 我也尝试过这个解决方案here https stackoverflow com questions 566
  • 在 Azure DevOps 中为 Wix MSI 文件生成 GUID

    我正在为 Web 服务器应用程序和 Sitecore 前端应用程序设置 Wix 安装程序 我的问题并非特定于 Web 服务器或 Sitecore 我的问题是 Wix 以及如何使用它进行持续交付 1 Wix 需要每个文件和产品本身的 GUID
  • 执行 git Push 时出现“diff.renamelimit 变量”警告

    我将本地提交推送到远程 git 服务器并收到以下警告消息 remote warning only found copies from modified paths due to too many files remote warning y
  • 在 .gitconfig 中隐藏 GitHub 令牌

    我想将所有点文件存储在 GitHub 上 包括 gitconfig 这需要我将 GitHub 令牌隐藏在 gitconfig 中 为此 我有一个 gitconfig hidden token 文件 这是我打算编辑并放在隐藏令牌的 git 下
  • 为什么 git-svn 应该积极搜索旧历史?

    当我运行 git svn clone s 时发生了一些奇怪的事情 尽管以下信息告诉我们不要惊慌 但我想知道为什么会出现这种 svn 错误 为什么这个路径不存在 是被别人删除了吗 如果是 为什么 git svn 应该积极搜索旧历史记录 Ini
  • 如何让 Gitlab 运行程序在成功构建时将代码合并到分支中

    嗯 标题几乎是不言自明的 总之 如果构建成功 我希望将一个分支 即开发 合并到另一个分支 即生产 我尝试了 jakub kania 解决方案 但我总是得到id rsa invalid format 我认为 gitlab 秘密变量以某种方式被
  • git-svn 如何知道要提交到哪个分支?

    我的存储库是 SVN 我使用 git 进行所有开发 我们有一个标准布局 我用以下命令初始化了我的本地存储库git svn init s
  • Spring Cloud Config - 不允许使用 git-upload-pack

    我有一个在 docker 环境中运行的 spring boot 应用程序 它连接到 Git 存储库以获取应用程序的配置 我的问题是 当尝试获取 properties 文件时 应用程序有时会出错 这很奇怪 因为如果我更改用户和密码 同一个应用
  • Git:以新名称签出旧版本的目录

    如何以新名称查看目录的先前版本 我一直都有一个目录foo在我的仓库中 我想创建一个目录foo old在我当前的工作树中 其内容是HEAD 2 foo 我同时需要两个版本 以确保它们给出相同的结果 测试这需要相当多的代码 并且需要同时提供两个
  • 如何使用 git --word-diff 显示空格差异?

    为了说明问题 参见diff https github com nim lang Nim commit 47c7fd037ed28b7de3d120b003d059d30e18f128 diff split diff 8af935b2312d
  • 如何获取 git 存储库中所有文件的计数?

    如何获取 git 存储库中当前所有文件的计数 您可以使用以下命令获取 git 存储库中所有跟踪文件的计数 git ls files wc l 命令分解 The git ls files命令本身打印出存储库中所有跟踪文件的列表 每行一个 Th
  • Heroku 应用程序上的 Nodejs Express EACCES 0.0.0.0:80

    我正在尝试在他们的网站上新创建的 Heroku 应用程序上运行 Node 应用程序 我按照他们的步骤操作 但在显示应用程序状态时仍然遇到错误 我跟着Node js 入门 https devcenter heroku com articles
  • 检查 Git 中是否需要 pull

    如何检查远程存储库是否已更改并且需要拉取 现在我使用这个简单的脚本 git pull dry run grep q v Already up to date changed 1 但它比较重 有没有更好的办法 理想的解决方案是检查所有远程分支
  • 创建多个 git 分支的联合分支

    我希望能够在现有分支之上分层其他分支 并独立修改这些分支 这很有用 例如 允许将各个子项目的二进制文件统一到同一个项目中bin目录 一般来说 给定的文件仅存在于一层中 理想情况下 我想我会使用 unionfs 来完成此任务 但它必须以某种方
  • 是否可以从 Github 网站或 API 获取分支合并列表?

    在我们的工作流程中 不会 直接 提交到主分支 主分支仅接收来自 Pull 请求的合并 我们可以将每次合并视为添加到主分支的新功能 因此 我想获得一个合并到 master 中的列表 作为一种可视化随着时间的推移添加到产品中的功能块的方式 gi
  • 在 python 中找不到 git 可执行文件

    我试图使用访问密钥克隆 git 存储库 但是当我尝试运行它时 它抛出一个异常 说找不到 git 可执行文件 但我已经安装了 git 并且 in it py 显示了正确的路径 C Program Files Git bin 我还安装了 git
  • 我如何才能看到 Github 风格的东西,例如 git -repo 的打孔卡和时间线?

    我正在寻找一个可以可视化 git repo 工作的软件 我喜欢 Github 的一些功能和 Bitbucket 的一些功能 所以我不想使用它们 因为它们并不完美 我正在寻找创建类似视觉特征的方法 下面你可以找到一些部分 但仍然缺少很多谜题

随机推荐

  • 一种新的爬虫网络解锁器

    事出原由 遇到一个需要采集境外电商的需求 相比国内各种层出不穷的反爬手段 境外产品更注重于用户行为和指纹上 所以笔者在想是否有类似于指纹浏览器的环境可以提供给爬虫采集器使用 经过检索 找到了一种名为爬虫网络解锁器的新兴产品 爬虫网络解锁器
  • 最深情的告白——郁金香(Python实现)

    目录 1 最深情的告白 2 即兴赞之 2 1 李小白言郁金香 2 2 郁金香般的姑娘 2 3 荷兰的郁金香 3 Python代码实现 3 1 郁金香的芬芳 3 2 我俩绚丽多姿的风景 1 最深情的告白 风中雨打花瓣 打不落她那冰清玉洁的品质
  • 双波长分光光度法的原理

    1 双波长分光光度法的原理 双波长分光光度法是在传统分光光度法的基础上发展起来的 它的理论基础是差吸光度和等吸收波长 它与传统分光光度法的不同之处 在于它采用了两个不同的波长即测量波长 又叫主波长 p Primary Wavelength
  • Java中 Happen-before 规则总结

    详细见 http docs oracle com javase 7 docs api java util concurrent package summary html 比较重要的几条 1 Actions prior to releasin
  • Elasticsearch在SpringBoot项目中简单使用

    目录 概要 在Spring Boot项目中的使用 一 添加依赖 二 配置连接 三 创建实体类 四 创建Repository 五 使用Repository 总结 概要 Elasticsearch 简称ES 是一个开源的分布式搜索和分析引擎 基
  • mysql root账户连接问题:Access denied for user ‘root‘@‘localhost

    问题描述 一个项目 框架用了Django 数据库用的mysql 但在执行python manage py migrate时遇到了如下问题 Traceback most recent call last File usr local lib
  • 字符串匹配算法(2)BM

    2017 02 24 本篇针对BM算法 字符串匹配 进行讲解 这个算法也是看了很久 看到这里也感觉很力不从心 看来需要我把前面两篇算法实践下了 不然总觉得空空的 概述 1 对于原有的都是从左往右进行匹配的模式进行修改 改为 从右往左 也就是
  • 金融数据获取系列之一(优矿)

    金融数据获取系列之一 优矿 1 优矿平台简要介绍 2 基于优矿平台的示例 获取中国大陆股票市场 18指数 上证指数 上证综指 上证A指 上证B指 上证50 上证180 上证380 深证指数 深证成指 深证综指 深证A指 深证B指 中证指数
  • Apache配置优化总结

    Apache下载 http httpd apache org download cgi conf httpd conf分别搜索关键字ServerTokens和ServerSignature 修改 ServerTokens OS 修改为 Se
  • centos7 静默安装oracle11g

    1 下载oracle11g文件 linux x64 11gR2 database 1of2 zip 和 linux x64 11gR2 database 2of2 zip 可以下载到本地再用ftp上传到服务器 2 创建用户组和oracle用
  • go env 配置(环境变量)说明

    前提 已经安装好 golang 可正确的运行下面这段命令 来查看 go 的配置 go env 输出示例 以上是我本地 windows 环境下输出的配置信息 环境变量 我们这次就针对每个配置信息进行一个说明 具体到每个字段是什么意思 以下标注
  • 计算机的进制与性能

    计算机的性能与进制 目前计算机的进制 我们都知道目前我们所使用的计算机的进制是二进制 因为我们通常会把一个计算机看成一个集成电路 就可以用我们初中物理上面学过的电路图来表示 而对应的二进制正好只有0 1两种状态 正好符合我们的逻辑方式 TR
  • html怎么获取window,怎么获取window.open中的值

    当前位置 我的异常网 ASP NET 怎么获取window open中的值 怎么获取window open中的值 www myexceptions net 网友分享于 2013 03 03 浏览 49次 如何获取window open中的值
  • 【SBT】getting org.scala-sbt sbt 1.8.2 (this may take some time)...问题解决

    在windows环境搭建scala环境需要用到sbt 在安装完sbt后首次使用下载sbt应用程序时长时间卡在这一步 网上有两种解决方式 1 网络代理 2 国内镜像 网络代理方式尝试了很多次 均不成功 国内镜像方式同样网上出现了大量帖子列举国
  • cout与printf

    printf与流 不妨也比较一下两个的优缺点 1 先说printf的优点 也就这一点了 那就是代码简洁 格式化方便 可以在格式化字符串里一次性将输出格式化 而ostream则需要一段一段地拆分 显得比较烦锁 特别是自定义输出类型的格式时 如
  • webpack5详细配置与介绍

    webpack的基本概念 微博pack时一种前端资源构建工具 一个静态模块打包器 再webpack看来 前端的所有资源 都会当作一个模块来处理 它将会根据模块的依赖关系进行静态分析 打包生成对应的静态资源 bundle entry 入口指示
  • torch.transpose()函数

    torch transpose Tensor dim0 dim1 是pytorch中的ndarray矩阵进行转置的操作 注意 transpose 一次只能在两个维度间进行转置 也可以理解为维度转换 例如 import torch as t
  • 命令行启动anaconda

    命令行启动anaconda anaconda navigator
  • VsCode使用技巧:避免ubuntu版本右键菜单误点

    问题描述 ubuntu版本 16 04 的VsCode 1 69版本 经常在代码界面下单击右键总会点到右键菜单中的某一项上面 只有每次点下的时候把鼠标向左移动再弹起才能避免 比如我们调试时 想把某个变量添加到监视 但是单击右键菜单 老是直接
  • gitlab常用的命令

    引言 使用gitlab提交代码的时候 若是使用的命令行 则需要输入命令行指令 下面是日常遇到的常用的命令行指令 详情 git命令行常用指令的使用 git status 上次提交后是否对文件再做了修改项目1 git add 添加所有的变动 g