2013-10-03 176 views
2

我们正在将我们的存储库从Bitbucket移至Stash中的本地环境。我能够导入我们仓库的最新版本,但不能提供以前提交和版本的细节。从Bitbucket导入存储历史记录?

你能指导我该怎么做才能导入我们的所有分支机构,提交和版本详细信息库?

这是我们如何导入我们的资料库:

  1. 本地创建一个文件夹,使用Git的Tortise,克隆它。
  2. 开放的Git猛砸,去到这个文件夹(directoary)使用CD命令
  3. 改变路径运行以下命令: git的初始化

    git add --all 
    
    git commit -m "Initial Commit" 
    
    git remote add origin http://[email protected]:7990/scm/PROJECT/repo.git 
    git push -u origin master 
    

由于我是新来的Git,这些可能不是正确的做法。

回答

3

您需要:

  • 克隆到位桶回购
  • 创建一个本地分支的所有分支到位桶
  • 推动一切藏匿。

那倒手段:

git clone -o bitbucket https://bitbucket.org/username/reponame 
cd reponame 
remote=bitbucket ; for brname in `git branch -r | grep $remote | grep -v master | grep -v HEAD | awk '{gsub(/[^\/]+\//,"",$1); print $1}'`; do git branch --set-upstream-to $brname $remote/$brname ; done 
git remote add origin http://[email protected]:7990/scm/PROJECT/repo.git 
git push --all 
git push --tags 

夫妇的注意事项:

而不是默认的 ' origin'
  • 我有一个名为远程的到位桶回购 'bitbucket'。
    那是因为你最终会使用你的Stash repo 默认
    这就是为什么我保留所述Stash回购的远程名称“origin”。

  • 为每个bitbucket分支做一个本地分支在这里描述:“Track all remote git branches as local branches”。

  • 我不会推荐在当地的回购(这是跟踪所有的Bitbucket分支)工作。
    我宁愿在其他地方克隆新填充的Stash回购,并从那里开展工作。