git仓库迁移而且不丢失log的方法

Git仓库迁移而不丢失log的方法


要求能保留原先的commit记录,应该如何迁移呢?

同时,本地已经clone了原仓库,要配置成新的仓库地址,该如何修改呢?


#1 建立新仓库

1). 从原地址克隆一份裸版本库,比如原本托管于 GitHub。

git clone --bare git://github.com/username/project.git

2). 然后到新的 Git 服务器上创建一个新项目,比如 GitCafe。

3). 以镜像推送的方式上传代码到 GitCafe 服务器上。

cd project.git

git push --mirror [email protected]/username/newproject.git

4). 删除本地代码

cd ..

rm -rf project.git

5). 到新服务器 GitCafe 上找到 Clone 地址,直接 Clone 到本地就可以了。

git clone [email protected]/username/newproject.git

这种方式可以保留原版本库中的所有内容。


#切换remote_url

先查看remote的名字

git branch -r

假设你的remote是origin,用git remote set_url 更换地址

[sql] view plain copy

git remote set-url origin remote_git_address  

remote_git_address更换成你的新的仓库地址。

第二种切换remote_url的方法更直接,直接更改.git/conf配置文件里的ip地址就行。

你可能感兴趣的:(git仓库迁移而且不丢失log的方法)