Git+Gitlab 远程库测试学习

祗疼妳一个  金牌会员 | 2024-9-25 04:10:37 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 838|帖子 838|积分 2514

Git远程堆栈

1、Git远程堆栈

何搭建Git远程堆栈呢?我们可以借助互联网上提供的一些代码托管服务来实现
   Gitee
  码云是国内的一个代码托管平台,由于服务器在国内,以是相比于GitHub,码云速度会更快
  码云 Gitee - 基于 Git 的代码托管和研发协作平台
    GitLab
  GitLab是一个用于堆栈管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务
  GitLab The One DevOps Platform | GitLab
  本文章以 极狐gitlab 作为远程堆栈学习举例
    GitHub
  GitHub是一个面向开源及私有软件项目的托管平台,由于只支持Git 作为唯一的版本库格式进行托管,故名gitHub
  gitHub GitHub: Let’s build from here · GitHub
  
2、从远程库克隆

git clone <url>   直接clone,不消初始化本地库git init。如
  1. git clone https://jihulab.com/csdn1/hello-jihu.git
复制代码
命令执行完后,会自动为这个远程堆栈建一个名为origin的代号.有了这个origin以后直接推送就行,不消再给远程堆栈起别名
有可能的报错:
   Incorrect username or password (access token)
fatal: Authentication failed for 'https://gitee.com/faith01238/Dockers.git/'
办理办法:打开控制面板--根据管理器。删除相应的凭证
  

  


3、查看远程库信息

  1. git remote -v //查看远程库信息
复制代码


上面显示了可以抓取和推送的origin的地址。假如没有推送权限,就看不到push的地址
   关联后远程库的名字就是origin
  git remote add <别名> <远端地址>
  1. git remote add orign 复制名
复制代码

  
4、根据名字删除远程库

根据名字删除远程库:比如删除origin
  1. git remote rm origin
复制代码
此处的“删除”其实是排除了本地和远程的绑定关系,并不是物理上删除了远程库。远程库本身并没有任何改动。要真正删除远程库,需要登录到Gitlab,在后台页面找到删除按钮再删除

5、wiondows 根据

(堆栈直接下载下来,没有输入密码)
   控制面板-用户账户-管理windows根据
  

  
远程分支

1、同名分支跟踪

跟踪远程同名分支后, push 和 pull 就自动同步。否则可能会出现如下错误提示
假如git pull提示 no tracking information 则阐明本地分支和远程分支的链接关系没有创建
   情况一:在分支推送的时候
  1. git push --set-upstream origin branch_name
复制代码
如许就可以自动在远程创建一个 branch_name 分支,然后本地分支会 track 该分支。
    情况二:手动建立追踪关系
  git branch --set-upstream-to=<远程主机名>/<远程分支名> <本地分支名>
  举比方下:
  1. git branch --set-upstream-to=origin/openapi-token-dev openapi-token-dev
复制代码
   1、第一次推送master分支时,加上了-u参数。会把本地的master分支和远程的master分支关联起来,
  1. git push -u origin master
复制代码
2、在以后的推送大概拉取时就可以简化命令,如下:
    git push <远端代号> <本地分支名称>
  1. git push origin master
  2. //把本地master分支的最新修改推送至远程仓库
复制代码

2、查看本地分支与远程分支的关联

   查看本地分支与远程分支的关联
  1. git branch -vv
复制代码
查看本地分支+上次提交的信息+本地和远程分支的关系,假如本地分支没有和任何远程分支建立追踪关系,那么就不显示(如下图的dev就没有建立关联)。
  

    查看本地所有分支的末了一次提交
  1. git branch -v
复制代码
查看本地分支+上次提交的信息
  
3、分支推送

推送本地的feature-branch(冒号前面的)分支到远程origin的feature-branch(冒号后面的)分支(没有会自动创建)
如下:推送分支openapi-token-dev
  1. git push origin openapi-token-dev:openapi-token-dev
复制代码
推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,如许,Git就会把该分支推送到远程库对应的远程分支上。

4、删除远程分支 

  
  1. git push origin --delete department-dev
复制代码
可以删除远程department-dev分支
  
5、Cherry pick

git cherry-pick命令的作用,就是将指定的提交(commit)应用于其他分支。
   git cherry-pick命令的参数,是提交的哈希值
  Cherry pick 支持一次转移多个提交。
  1. $ git cherry-pick <HashA> <HashB>
复制代码
上面的命令将 A 和 B 两个提交应用到当前分支。这会在当前分支生成两个对应的新提交。

辩说测试

1、idea办理辩说

三视图中左变为本身代码,右边为别人代码,中间为上一个版本代码

Accept Left
   左侧就是本身的代码,可以看到最上面代码上方有"Your version"标识。
  选择Accept Left选项即表示使用本身的代码覆盖掉别人的辩说代码
  Accept Right
   假如选择右侧别人的代码,则本身的代码会被覆盖
  
2、本地拉取时辩说

条件在同一个分支,如main分支。
   我本地修改了某一个文件的某一行还未提交,这时候我想提交了,那我就先去拉取最新的代码。这时候一拉,就报如下这个错了
  

  报错缘故原由分析:由于有其他人如baoe也改了这一行,并且他已经提交并推送到远程堆栈了
  办理方式一:还原
   像我之前一样吗,把本身的修改还原并备份,然后再重新拉取。。
  1. 虽然这能解决,但是拉取完新的代码,我还需要再次把备份的东西重新手动再写一遍。。。
复制代码
虽然笨,但是有用,哈哈哈
  办理方式二:贮藏
   备份当前的工作区的内容,让工作区变为和上次提交的内容同等。相当于备份的工作不消我们本身去做了。
  1. # 暂存本地更改
  2. git stash
  3. # 执行合并
  4. git pull
  5. # 恢复本地更改
  6. git stash pop
复制代码
末了恢复本地更改的时候可能与最新代码有辩说,此时仍需要手动办理辩说。如下:
  

  办理辩说
  

  
3、远程分支合并辩说

比如,我在gitlab上把main远程分支合并到远程dev分支时,出现了辩说。

方式一:我们选择本地办理
   1、git fetch origin
  2、
  git fetch 不会自动合并下载的数据到你的本地分支。它只是将远程堆栈的数据下载到你的本地堆栈中。
  方式二:
   拉取远程合并的目标分支到本地开辟分支上来
  把远程的目标分支(sit)拉取到本地的开辟分支(dev)上,为什么这么做呢,其实就是让远程最新的代码和本地存在冲的分支进行合并,编辑器会给我们进行辩说合并处置惩罚,需要我们手动办理辩说
  在本地进行辩说处置惩罚,然后再提交到远程开辟分支上
  
4、git merge --no-ff

Fast Forward意为"快进模式"。重要使用在多分支合并的情况下。即:当前分支合并另一个分支的时候,假如合并的过程中没有Conflict辩说的时候,则会通过直接移动两个分支的指针,来到达合并的过程,这个过程就叫做Fast Forward。
No Fast Forward(--no-ff方式)
   假如要逼迫禁用Fast Forward模式,Git就会在merge时生成一个新的commit,如许,从分支历史上就可以看出分支信息。此处就会使用到 --no-ff 参数方式merge提交了
  window 自动重启排查
打开事件查看器:‌可以通过按Win + R键,‌输入eventvwr.msc,‌然后按Enter键来打开事件查看器。‌
Windows日记-系统-筛选当前日记


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

祗疼妳一个

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表