【Git篇】-- Git-bundle命令的使用
2023-09-11 14:16:24 时间
1. 打包
用git bundle create命令来打包
# dev指具体的分支名称,repo指项目代码仓库的名称
# 产生的repo.bundle 包含了所有重建该仓库 dev分支所需的数据
git bundle create repo.bundle HEAD dev
2. 验证
用git bundle verify校验是否合法
此命令需要在项目代码仓库目录下执行,否则会报:git bundle need a repository to verify a bundle
git bundle verify repo.bundle
3. 查看分支
#用git bundle list-heads列出顶端提交
git bundle list-heads repo.bundle
#在远程存储库中列出引用
git ls-remote repo.bundle
4. 导入bundle
4.1. 没有gitlab服务器
开发环境中没有gitlab服务器,修改代码后只提交到本地
# 导入的项目没有.git目录
git clone repo.bundle
4.2. 有gitlab服务器
4.2.1 从bundle中clone
开发环境中有gitlab服务器,修改代码后需要提交到gitlab服务器
- 在gitlab上创建代码仓库【注意:不要创建bundle中的分支】
- 从bundle包中clone
git clone repo.bundle
cd 仓库目录
- 执行如下命令
git remote rename origin old-origin
git remote add origin http://ip:port/xxx/xx.git
git push -u origin -all
git push -u origin --tags
4.2.2 从bundle中fetch
开发环境中有gitlab服务器,修改代码后需要提交到gitlab服务器
- 在gitlab上创建代码仓库【注意:
不要创建bundle中的分支
】 - 将代码仓库clone到本地,
cd 仓库目录
- fetch bundle中的分支
# 前面的dev是repo.bundle的分支,后面的dev是生成的新分支
git fetch repo.bundle dev:dev
- 将本地分支同远程分支进行关联
git push -u origin dev
# 相同作用的命令
git push --set-upstream origin dev
如何将本地分支同远程分支进行关联
本地已经创建了分支而远程没有
可以通过以下2种方法在远程创建分支dev,并与本地分支进行关联:
- 方法1: git push -u origin dev
- 方法2: git push --set-upstream origin dev
远程已经创建了分支,而本地没有
在本地创建分支并与远程分支进行关联,也有2种方法:
-
方法1: 分为两步:
- step1:先将远程分支pull到本地 git pull origin dev
- step2:再在本地创建分支并与之关联,又有2种方法
git checkout -b dev origin/dev
git checkout -b dev --track origin/dev
#可以简写为git checkout --track origin/dev
-
方法2:可以在pull远程分支的同时,创建本地分支并与之进行关联
git pull origin dev:dev
-------两个dev分别表示远程分支名:本地分支名
相关文章
- Git基础笔记(便查阅)
- 解决:git使用git push 命令跳出remote: Permission to A denied to B的问题
- git 命令合并分支
- git密码配置
- [Git] A better git process
- 常用 Git 命令
- [Git] Recover Local Changes from `git reset --hard` with `git reflog`
- [Practical Git] Show who changed a line last with git blame
- [Git]2. reset, checkout, origin, remote, pull, push
- 详解Git工作区、暂存区、历史记录区以及git reset、git revert、git checkout等撤销命令的区别
- git初始化及关联远程仓库命令
- ABAP git 客户端的简单介绍
- Git使用操作指南和GitHub
- 001-软件架构概览、maven补充【分包工程、合并包、web容器插件】、git补充
- 每日一条 Git 命令:git merge remote master
- Git 管理工具 SourceTree 的使用(上手简单,不熟悉git命令的开发者必用)
- Git命令基础应用
- git报错:Your branch and ‘origin/master‘ have diverged
- git 常用命令——筑梦之路