带着历史提交记录迁移git仓库
1. git push --mirror
--mirror模式会把本地的分支都克隆
// 先用--bare克隆裸仓库
git clone git@gitee.com:zhangamie/testApp.git --bare
// 进入testApp.git,这样就可以把所有分支都克隆到新仓库了
git push --mirror git@gitee.com:zhangamie/testApp2.git
或
// 普通模式克隆仓库
git clone git@gitee.com:zhangamie/testApp.git
// push所有本地已存在的分支(不管是否有对应的远程分支)
git push --mirror git@gitee.com:zhangamie/testApp2.git
2. 加远程源
git remote add origin2 git@gitee.com:zhangamie/testApp2.git
git push origin2
git checkout dev
git push origin2
...
这种方式的缺点是只能一次push一个分支,如果要克隆所有分支,需要checkout到各个分支然后push
3. git subtree
推荐阅读:git subtree操作
上面2种都是整个仓库的迁移,而git subtree可以把某个子目录拆出去
例如想把仓库的目录src/apps/testApp拆出去一个仓库,并且带上这个目录的所有提交历史记录
首先我们得创建一个空的仓库(记得别带任何初始化文件,例如README.md)
例如:git@github.com:xxxx/testApp.git master
然后到主仓库执行这段git命令,就可以到testApp看到代码啦
git subtree push --prefix=src/apps/testApp git@github.com:xxxx/testApp.git master
带着历史提交记录迁移git仓库的更多相关文章
- git删除所有历史提交记录,只留下最新的干净代码
git删除所有历史提交记录,只留下最新的干净代码 1.Checkout git checkout --orphan latest_branch 2. Add all the files git add ...
- Git 删除所有历史提交记录方法
Git 删除所有历史提交记录方法 切换分支 git checkout --orphan latest_branch 添加所有文件 git add -A 提交更改 git commit -am &quo ...
- windows提交代码到git仓库
进入git bash git config --global user.name '仓库名' git config --global user.email '2531099@163.com' git ...
- git知识总结-4.git服务器搭建及迁移git仓库
1. 前言 因为手里有一份代码之前是直接从其它git服务器上克隆下来的,现在想自己搭建一个git服务器把这份代码管起来. 2. 搭建git服务器 1.安装git: $ sudo apt-get ins ...
- 如何提交代码到git仓库
首先连接远程仓库 git remote add origin 仓库地址 然后拉取分支 git pull origin master 随后可查看本地增删改的文件 git status 增加本地的更改 g ...
- 纯命令提交代码到git仓库(教你怎么装逼)
如果不喜欢用命令的请点链接:http://blog.csdn.net/xiangzhihong8/article/details/50715427 我这里用纯命令,主要是因为这两天不知道什么原因,ba ...
- Git彻底删除历史提交记录的方法
有时候我们可能会遇到git提交错误的情况,比如提交了敏感的信息或者提交了错误的版本.这个时候我们想将提交到代码库的记录删除,我们要怎么做呢? 首先,我们需要找到我们需要回滚到的提交点的hash,可以使 ...
- GIT入门笔记(8)-- 查看历史提交记录/根据版本号回到过去或未来
在Git中,用HEAD表示当前版本,也就是最新的提交版本, 上一个版本就是HEAD^, 上上一个版本就是HEAD^^, 往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. Git ...
- 如何提交本地代码到git仓库
首先要先注册一个自己的GitHub账号,注册网址:https://github.com/join 有了自己的账号以后,就可以进行登录,开始创建一个新的项目 创建一个新的项目,填写项目名称,描述 我是和 ...
随机推荐
- 游记-NOI2019
Day -18 被各路julao们轮番吊打-- Day -12 鸽子F发布了笔试题库,然而并没有 "MLE全场记零分" 的操作 Day -8 广二体育馆机器装配完毕,误闯开幕式表演 ...
- VMWare打开centos,提示内部错误
如题,VMWare打开centos,提示内部错误.该原因是因为服务被停止了之后没有将其启动,将其启动就解决了. CMD客户端输入命令 services.msc 将关于VM的服务启动就可以了
- [转载]Linux下非root用户如何安装软件
[转载]Linux下非root用户如何安装软件 来源:https://tlanyan.me/work-with-linux-without-root-permission/ 这是本人遇到的实际问题,之 ...
- day24-python之面向对象
1.面向对象 # name='元昊' # # gender='母' # # type='藏獒' #狗的特征 dog1={ 'name':'元昊', 'gender':'母', 'type':'藏獒' ...
- android 动画总结一
一.补间动画 补间动画就是指开发者指定动画的开始.动画的结束的"关键帧",而动画变化的"中间帧"由系统计算,并补齐. 补间动画分为四种:平移动画(Transla ...
- OpenStack kilo版(3) Nova部署
部署在controller和compute节点 配置数据库 MariaDB [(none)]> CREATE DATABASE nova; Query OK, 1 row affected ( ...
- 检查shell脚本
1.检查solr服务监控脚本: #/bin/bash starttime=$(date +%Y-%m-%d\ %H:%M:%S) http_code=$(curl -I -m -o /dev//sol ...
- rabbitmq二进制安装
一.erland的安装 1.首先测试一下是否已经安装了erlang,命令 rpm -qa | grep erlang 2.没有安装则用yum安装 yum install erlang -y 二.下载r ...
- docker 运行没有权限执行文件解决
docker运行挂载主系统目录,导致无法启动configuration error: open /etc/docker/registry/config.yml: permission denied 提 ...
- UTF-8&Unicode,0xC0和0x80是什么?
转载:http://blog.sina.com.cn/s/blog_7c4f3b160101dv4p.html 一个字符串长度统计的代码,如下 int calcLen(const char* _str ...