2

リポジトリを Bitbucket から Stash のローカル環境に移動しています。リポジトリの最新バージョンをインポートできますが、以前のコミットとバージョンの詳細はインポートできません。

すべてのブランチ、コミット、およびバージョンの詳細を含むリポジトリをインポートするにはどうすればよいか教えてください。

これは、リポジトリをインポートする方法です。

  1. Tortise Git を使用してローカルにフォルダーを作成し、そのクローンを作成します。
  2. Git Bash を開き、CD コマンドを使用してパスを変更して、このフォルダー (ディレクトリ) に移動します。
  3. 次のコマンドを実行します: git init

    git add --all
    
    git commit -m "Initial Commit"  
    
    git remote add origin http://User@localhost:7990/scm/PROJECT/repo.git
    git push -u origin master
    

私は Git を初めて使用するので、これらは正しい方法ではない可能性があります。

4

2 に答える 2

3

必要がある:

  • Bitbucket リポジトリのクローンを作成する
  • すべての Bitbucket ブランチのローカル ブランチを作成する
  • すべてをスタッシュにプッシュします。

つまり、次のようになります。

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://User@localhost:7990/scm/PROJECT/repo.git
git push --all
git push --tags

いくつかのメモ:

  • bitbucketデフォルトの「 」ではなく、Bitbucket リポジトリのリモートに「 」という名前を付けましたoriginこれは、デフォルトで
    Stash リポジトリを使用することになるためです。そのため、前述の Stash リポジトリ用 にリモート名 " " を予約しました。
    origin

  • すべての bitbucket ブランチに対してローカル ブランチを作成する方法については、「すべてのリモート git ブランチをローカル ブランチとして追跡する」で説明しています。

  • そのローカル リポジトリ (すべての Bitbucket ブランチを追跡している) で作業することはお勧めしません。
    新しく埋められた Stash リポジトリを別の場所に複製して、そこから作業したいと思います。

于 2013-10-04T05:30:25.117 に答える