自分のローカルgitリポジトリをSourceTreeにインポートして自分のBitbucketアカウントにプッシュする方法はありますか。自分のアカウントに自分のローカルリポジトリと同じ新しいリポジトリを作成する方法はありますか?それとも、最初にレポをオンラインにしてそれにプッシュする必要がありますか? Githubにはクライアントから直接ローカルリポジトリを公開する方法があり、公開すると自動的に作成されますが、プライベートリポジトリは限られています。私は宿題をやっているだけなので、それを公にする理由はありません。それ故に私はbitbucketを使おうとしています。
(sshの代わりにhttpsを使用するように3-29-2019で更新されたので、sshキーを使用する必要はありません)
BitBucketの場合は、最初にリポジトリをオンラインで作成する必要があります。 Atlassian の指示に従って、新しいBitBucketリポジトリを作成し、リポジトリのURLをクリップボードにコピーしてから、そのリポジトリをローカルリポジトリの新しいリモートとして追加します(以下の全手順)。
レポURLを取得する
git clone <repository url>
の形式で表示されます。CLIを使用してリモートを追加する
cd /path/to/my/repo
git remote add Origin https://bitbucket.org/<username>/<reponame>.git
git Push -u Origin --all
SourceTreeを使ってリモートを追加する
https://bitbucket.org/<username>/<reponame>.git
)(このメソッドはhttps URLの代わりにssh URLを使用する場合です。これはssh://[email protected]/<username>/<reponame>.git
のように見えます。httpsを使用することをお勧めします)
BitBucketはプライベートリポジトリには最適ですが、あなたのBitBucketアカウントで動作するようにあなたのコンピュータを認証するためにsshキーを設定する必要があるでしょう。幸いなことにSourcetreeはそれを比較的簡単にします:
SourceTreeでキーを作成する:
Tools
> Options
で、General
タブの下でSSH Client:
がPuTTY/Plink
に設定されていることを確認してください。Tools
> Create or Import SSH Keys
を選択しますGenerate
をクリックしてマウスを動かし、キージェネレータをランダムにします。下のスクリーンショットに表示されているようなものがあります。公開鍵(青で強調表示されているもの)をクリップボードにコピーします
Save private Key
とSave public key
をクリックして、選択した場所(たとえば<Home Dir>/PuTTY/ssk-key.ppk
と<Home Dir>/PuTTY/ssh-key.pub
など)にキーを保存します。BitBucketにキーを登録する
Settings
をクリックします。SSH Keys
タブに移動しますAdd SSH Key
をクリックして名前を付け、前のセクションの手順4でコピーした公開鍵を貼り付けますそれでおしまい!これでBitBucketプライベートリポジトリにプッシュ/プルできるようになりました。あなたのキーもGit専用ではありません。多くのサービスはユーザーを識別するためにsshキーを使います。鍵を紛失したことがある場合(コンピュータの変更など)は、手順に従って新しい鍵を作成して登録してください。
サイドノート:CLIを使ったSSH鍵の作成
このように ビデオで説明 、最初にリポジトリをオンラインで作成するのが普通の方法です。
SourceTreeリリースノート SourceTree 1.5以降について言及しています:
Bitbucketのチーム/組織アカウントの下に新しいリポジトリを作成することをサポートします。
そのため、「発行」機能はありませんが、SourceTreeからオンラインリポジトリを作成できます。
ブログ記事「 Windows 1.2用SourceTreeはこちら 」(2013年9月)にも次のように記載されています。
これで、あなたはあなたのBitbucket、StashそしてGitHubアカウントをSourceTreeで設定し、即座にそれらのサービス上のあなたのすべてのリポジトリを見ることができます。簡単にクローンを作成し、Web上でプロジェクトを開いて、SourceTreeを離れずにリモートサービス上に新しいリポジトリを作成することもできます。
[表示]> [ホストされているリポジトリの表示]の下のメニュー、またはブックマークパネルの右下にある新しいボタンを使用して検索できます。
私はこれを使用しました、そしてそれは私にとってうまくいきました。あなたのディレクトリが
"リポジトリ"とあなたのプロジェクトは "こんにちは"プロジェクトをそこにコピーします
cd /path/to/my/repo
ディレクトリを初期化する
git init
プロジェクトを上演する
git add hello
プロジェクトをコミットする
git commit
Bitbucketで使用しているメールアドレスとユーザー名を使用して設定を追加します。
git config --global user.email
git config --global user.name
プロジェクトにコメントを追加する
git commit -m 'comment'
今プロジェクトをプッシュする
git Push Origin master
マスターからチェックアウト
git checkout master
Bitbucketは、プログラムでBitbucketリポジトリを作成するために使用できるREST APIをサポートします。
ここで入手可能なドキュメントとcURLのサンプル: https://confluence.atlassian.com/bitbucket/repository-resource-423626331.html#repositoryResource-POSTanewrepository
$ curl -X POST -v -u username:password -H "Content-Type: application/json" \
https://api.bitbucket.org/2.0/repositories/teamsinspace/new-repository4 \
-d '{"scm": "git", "is_private": "true", "fork_policy": "no_public_forks" }'
Windowsでは、curlはGit Bashシェルから入手できます。
この方法を使うと、ローカルのgitサーバーからBitbucketに多くのリポジトリをインポートするためのスクリプトを簡単に作成することができます。
Windowsユーザーのためのもう一つの解決策:
これはBitbucketに到達するためのブリッジとしてGithubを使用しています。これは、WindowsのSourcetreeアプリから直接公開できないためです。
これが完了すると、すべてがBitbucketにロードされます。あなたの地元のリモコンはおそらく今Bitbucketを指すように設定する必要があるでしょう。
Joe's answer への更新として、APIを使ってリポジトリの作成をスクリプト化できるという点で、私が必要とするAPI呼び出しだけが異なりました。これはbitbucketサーバーではなくbitbucketサーバーを使用しているためと考えられます。
私たちのサーバー上のプロジェクト内に新しいリポジトリを作成するために、私は使用しました:
curl -X POST -v -u USER:PASSWORD -H "Content-Type: application/json" \
http://SERVER/rest/api/1.0/projects/PROJECTNAME/repos/ \
-d '{"scmid":"git", "name":"REPONAME"}'
USER
name__、PASSWORD
name__、SERVER
name__、PROJECTNAME
name__、およびREPONAME
name__は、もちろん希望または必須の値です。
呼び出しは文書化されています APIリファレンス内 。
/rest/api/1.0/projects/{projectKey}/repos
新しいリポジトリを作成します。このリポジトリが作成される既存のプロジェクトが必要です。使用される唯一のパラメータはnameとscmIdです。
認証されたユーザーは、コンテキストプロジェクトがこのリソースを呼び出すためにPROJECT_ADMIN権限を持っている必要があります。
GITは、コミットやブランチが適切に管理されていれば、バージョン管理やチームプロジェクトに適しています。
ステップ1:上記の回答で述べたように、cliを使用してローカルレポを複製します。
$ cd [path_to_repo]
$ git remote add Origin ssh://[email protected]//.git
$ git Push -u Origin --all
ステップ2:あなたはあなたの作品をプッシュ/プルするために上記のステップのいずれかに従うことができます。簡単な方法はgit guiを使うことです。グラフィカルインターフェイスを提供するので、ステージング(追加)/アンステージング、コミット/アンコミット、プッシュ/プルが簡単にできます。初心者は簡単にgitプロセスを理解することができます。
$ git gui
(または)
ステップ2:上記の通り。 Cliコードがその仕事をします。
$ gitステータス
$ git add [ファイル名]
$ git commit _m "[メッセージを書く"] "
$ git Push Origin master/branch_name