Visual StudioのGit-既存のプロジェクトを追加しますか?


105

既存のプロジェクトをGitのソース管理下に置くことを試みていますが、いくつかのことについては不明です。

「Team Foundation Service」のGitアカウントをオンラインで設定しました。

現在、ASP.NET MVC 4ソリューションがあります-プロジェクトフォルダーにあります。ローカルでGit「リポジトリ」を作成しました(現在は空のフォルダ)。これは、Projectsの現在のアプリケーションフォルダーにする必要がありますか?それともコピーである必要がありますか?

既存のファイルをオンラインリポジトリに取り込むにはどうすればよいですか?


「Visual StudioのGit」について言及していますが、Visual Studio 2012でgitツールを使用していますか?
エドワードトムソン2013年

これは現在、チームエクスプローラーの下の2015バージョンに埋め込まれていると思います。私はこれに出くわしましたが、「公開」(vsの初期化後の最初のプッシュ)できなかったため、URIを追加する手順を含む回答を追加します
mschr

回答:


148

私は同様の質問を探して回りました-既存のプロジェクトファイルのGitリポジトリを初期化する方法は次のとおりです(免責事項:これは、Team Foundation ServerのセットアップなしでVisual Studio 2013 Expressで行われます):

  1. Visual Studioでプロジェクトを開きます。
  2. メニューの[ファイル ] → [ ソース管理に追加 ]をクリックします。

Gitがセットアップされていると仮定すると、メニューの[表示][ チームエクスプローラー ]に移動し、プロジェクトファイルのリポジトリをダブルクリックして、最初のコミットを実行できます(必要なファイルを追加してください) )。


7
これにより、Visual Studioがこの詳細を処理するので、「合理的な.gitignoreファイルを提供する」という手間も省けます。手動のgit initとこれの間で、これが私の推奨する方法です。
MrCC、2015年

この新しいソリューションを追加するプロジェクトを選択する場合は、[同期]ボタンをクリックしてから、[gitリポジトリに公開]をクリックし、[詳細ソリューション]をクリックして、この新しいソリューションを追加するプロジェクトを選択します。それが終わったら、同期してブームにすることができます
Jamisco 2018

注:別のリポジトリに含まれている共有ライブラリをすでに追加しているため、これは私にはうまくいきませんでした。「ソース管理に追加」オプションが利用可能になる前に、共有プロジェクトを削除する必要がありました。
Neil B

2
チームエクスプローラーウィンドウにこれを追加する必要があります。
thReality

66
  1. まず最初に、Git Extensionsなどのローカル開発マシンにGitソフトウェアをインストールする必要があります。
  2. 次にgit init、ソリューションフォルダーで行います。これは、リポジトリフォルダを作成する適切な方法です。
  3. 適切な.gitignoreファイルをセットアップして、不要なものをコミットしないようにします。
  4. git add
  5. git commit
  6. Team Foundation Serverアカウントの説明に従って、適切なリモートを追加します git remote add origin <proper URL>
  7. git push あなたのコード

または、Visual Studio統合を使用した詳細なガイドがここにあります。


これは非常にうまくいきました、クラスに感謝します!注:機能させるには、URLを引用符で囲む必要があります。
ジャックフェアフィールド

NB:Gitの拡張のための新しいURL:visualstudiogallery.msdn.microsoft.com/...
JohnLBevan

@JohnLBevanその拡張は、古いバージョンを指しているように見えます
Klas Mellbourn

リンクが壊れている

@PaulScharnofske教えてくれてありがとう。私はそれらを今修正しました
Klas Mellbourn 2016年

15

Visual Studioを使用してログに記録した後、私はようやく必要以上に時間がかかっている答えを見つけました。

ソース管理なしで既存のプロジェクトを取得して、既存のEMPTY(これは重要)のGitHubリポジトリに配置するには、プロセスは単純ですがトリッキーです。最初の傾向はチームエクスプローラーを使用することです。あなたは問題を抱えています。

まず、ソース管理に追加します。上記にはいくつかの説明がありますが、誰もがこれを理解しています。

これで空のLOCALリポジトリが開きます。だれにも言われないトリックは、チームエクスプローラーを完全に無視してソリューションエクスプローラーに移動し、ソリューションを右クリックして[コミット]をクリックすることです。

これにより、既存のソリューションとローカルリポジトリの間のすべての違いがコミットされ、基本的にこれらすべての新しいファイルで更新されます。デフォルトのコミット名に「初期ファイル」またはボートに浮かぶものを指定してコミットします。

次に、次の画面で[ 同期 ]をクリックし、EMPTY GitHubリポジトリのURLをドロップします。空であることを確認してください。そうしないと、マスターブランチが競合し、許可されなくなります。そのため、新しいリポジトリを使用するか、以前に失敗した古いリポジトリを削除します。これはVisual Studio 2013であるため、走行距離は異なる場合があることに注意してください。


14

ソリューションを右クリックして、[ ソース管理に追加 ]を選択します。次にGitを選択します。

これで、プロジェクトがローカルのソース管理に追加されました。ファイルの1つを右クリックし、[ コミット ]を選択します。

次に、コミットメッセージを入力して[ コミット]を選択します。次に、[ 同期]を選択して、プロジェクトをGitHubと同期します。Gitリポジトリが必要です。GitHubに移動して、新しいリポジトリを作成し、リポジトリリンクをコピーして、リモートソース管理サーバーに追加します。[ 公開]を選択します。

それで全部です。


この答えは正解であり、VS 2015で機能します。しかし、これは新しいgitユーザーであるという大きな質問がありました。VS 2015はgitignoreファイルを作成していないか、VSによって作成され、チェックインしてはならないDLL /ファイルを無視する方法を提供していないようです。たとえば、objフォルダーと同様に、すべてをローカルリポジトリにコミットしようとしています。他の誰かがこの問題を抱えていますか?私はこのすべてをローカルでコミットしたくない。
マット

詳細については、上記のコメントを修正します。ディレクトリを確認すると、実際には非常に大きいgitignoreファイルが作成されました。これは非常に大きく、手動で作成するのは嫌です。ただし、ローカルリポジトリに最初のコミットを行おうとしたとき、すべてのファイルがgitへのコミットに使用可能であり、それが大きな混乱であったため、VSはこのgitignoreファイルを使用しませんでした。ソリューションを閉じ、ソリューション内の.gitフォルダーと2つのgitファイル(gitから切り離されます)を削除し、再度開いて、ファイルに移動し、ソース管理に追加して、もう一度gitを選択しました。今回はうまくいきました。
マット

2019年12月になり、さらに簡単になりました。上記の手順を実行して[同期]をクリックすると、GitHubアカウントと、これをプライベートリポジトリにするかどうかを尋ねられます。選択すると、新しいリポジトリが作成され(GitHubにアクセスする必要はありません)、正常に作成されました。
バットポックス

5

SourceTreeの使用:

ソリューションエクスプローラーでソリューション名を右クリックします。「ソース管理に追加」を選択します。

次に、SourceTreeに移動し、[ Clone / New]を選択します。[ 作業フォルダーの追加]を選択し、ソリューション内で作成した新しいGitの場所をポイントします。

空のGit(BitbucketまたはGitHub)のクローンアドレスを取得して取得し、SourceTreeに戻り、[ Remotes ]を右クリックします New Remoteを追加し。(最新バージョンでは、[ リポジトリ] →[ リモートの追加...]に移動します。そのボックスにURLを貼り付けてを押しますOK

これは、最初のコミットとプッシュを行う方法です。


5

最も簡単な方法は、MSDNの記事「Visual Studio 2017およびVSTS Gitでコードを共有する」で説明されているとおりです。

  1. Visual Studioの右下隅にあるステータスバーの[ ソース管理追加]を選択して、プロジェクトの新しいローカルGitリポジトリを作成します。これにより、ソリューションがあるフォルダーに新しいリポジトリーが作成され、コードがそのリポジトリーにコミットされます。

    ここに画像の説明を入力してください

  2. チームエクスプローラーの[プッシュ]ビューで、[Visual Studioチームサービスへのプッシュ]の[Gitリポジトリの公開]ボタンを選択します。

    ここに画像の説明を入力してください

  3. リモートソース管理に接続し、リポジトリ名を入力して、[ リポジトリの公開]を選択します

    ここに画像の説明を入力してください


3

Visual Studio 2015では、最終的に機能させる唯一の方法は実行することでした git init、コマンドラインを使用してディレクトリのルートすることでした。次に、チームエクスプローラーに移動し、ローカルのgitリポジトリを追加しました。次に、そのローカルgitリポジトリを選択し、[設定]-> [リポジトリ設定]に移動して、リモートリポジトリを追加しました。これで、Visual Studioを統合して、既存のプロジェクトをgitで使用できるようになりました。

私はすべての答えを読みましたが、どれもうまくいきませんでした。基本的にはと同じようgit initに動作すると想定されていた[ファイル]-> [ソース管理に追加]に移動しましたが、チームエクスプローラーに移動するとすべてのオプションがグレー表示されたため、プロジェクトが初期化されなかったようです。また、[変更]ダイアログにも何も表示されません。別の回答では、チームエクスプローラーでローカルリポジトリを作成する必要があるだけで変更が表示されるとのことですが、それも機能しませんでした。チームエクスプローラーのすべてのGitオプションは、コマンドラインを使用してプロジェクトを初期化した後にのみ機能しました。

私はVisual Studioを初めて使用しているので、明らかなものを見逃したのかどうかはわかりませんが、私のプロジェクトがVisual Studioから初期化されていなかったようです。


「ファイル->ソース管理に追加」を選択した後、「ソース管理-Git」ペインの出力ウィンドウに何かありますか?[変更]ページには何も期待していませんが、Gitリポジトリの履歴を表示すると、ファイルがリポジトリにコミットされた "プロジェクトファイルの追加"のコミットが表示されるはずです。
jamill

これはソース管理エクスプローラと同じですか?その場合、何も表示されません。ソース管理プラグインを追加するためのリンクが表示されるだけです。クリックしてGitを選択しても、何も起こりません。チームエクスプローラー内の他のパネルについても、何も起こりません。コマンドラインからプロジェクトを初期化し、[接続]ペインからローカルリポジトリを作成した後で初めて、VS Gitツールがプロジェクトと対話するようになります。
chavab_1 2017

2

まず、目的の相対パスで「ソリューションフォルダー」を作成します。Visual Studio 2012は、同じ相対パスでシステムフォルダーを作成しないことに注意してください。

ここで、「ソリューションフォルダー」内に新しいプロジェクトを追加しますが、システムの相対パスが新しい「ソリューションフォルダー」の相対パスと一致するように定義する場合は注意が必要です。必要なシステムフォルダーが存在しない場合は、Visual Studio 2012によって新しいプロジェクト用に作成されます。(上記のように、新しい「ソリューションフォルダー」を追加する場合、これは行われません。)

相対パスが一致する既存のファイルを追加する場合は、まずVisual Studioの外部から、一致するシステム相対パスにファイルを作成する必要があります。次に、Visual Studioで既存のファイル追加できます


1

目的のリポジトリが既に存在する場合(おそらくGitHubにある)、それをローカルシステムに複製し、ソリューションディレクトリをその中にコピーできます。次に、ファイルを追加し、ファイルをコミットして、ローカルにプッシュします。これにより、ソリューションがリポジトリに配置されます。


1

Visual StudioのGit-既存のプロジェクトを追加します。ローカルリポジトリをGitHub、GitLabなどのプロジェクトに公開する方法。

それで、あなたはソリューションを作成しました、そしてあなたはどこかにあなたのGitアカウントを通してそれをアップロードしてバージョンコントローラーにしたいです。Visual Studio 2015のチームエクスプローラーには、このためのツールがあります。

Meuepが言及しているように、ソリューションをロードしてからFile >>に 移動しますAdd to Source Control。これはと同等ですgit init。次に、これがあります:

チームエクスプローラーホーム

次に、[ Settings >>] Repository Settingsを選択し、[ リモート]までスクロールします

ここに画像の説明を入力してください

設定しorigin(必ずこの予約済みの名前をそこに配置してください)、URIを設定します。

次にAddSyncとを使用できますPublish


1

プロセスは、GitHubと組み合わせて、VS2017 / VS2019(たぶんもっと早いですが、私はテストしていません)で大幅に簡略化されています。

  1. GitHubに空のリポジトリを作成します=> https://github.com/ /.git

  2. Visual Studio用のGitHub拡張機能をインストールする

  3. 次の手順に従ってください:(オプションでソース管理にgit initializeを追加)->チームエクスプローラー->同期-> GitHubに公開-> https://github.com/ /.git


0

GitHubから既存のプロジェクトを開く場合は、次の手順を実行する必要があります(これらはVisual Studio 2013専用の手順です!!!!さらに、古いバージョンと同様に、組み込みのGitインストールはありません)。

  1. チームエクスプローラー→teamProjectsに接続→ローカルGitRepositories→ クローン

  2. ブラウザからGitHubアドレスをコピーして貼り付けます。

  3. このプロジェクトのローカルパスを選択します。


0

私にとって、Gitリポジトリ(GitHubではない)はすでに作成されていますが、空です。これは、既存のプロジェクトをGitリポジトリに追加するための私のソリューションでした。

  1. Git Extensionsを使用してリポジトリーを複製してチェックアウトしました。
  2. 次に、既存のプロジェクトファイルをこのリポジトリにコピーしました。
  3. .gitignoreファイルを追加しました。
  4. すべてのファイルをステージングしてコミットしました。
  5. リモートリポジトリにプッシュされます。

Git Extensionsなどのツールを使用せずにVisual Studio 2015でこれをすべて直接実行するのは興味深いですが、Visual Studioで試したものは機能しませんでした(プロジェクトにソース管理に追加を使用できません。リモートを追加することはできませんでした。ヘルプなど)。


0

ソリューション内にプロジェクトを追加するには、チームエクスプローラーウィンドウを開いて[変更]に移動します。次に、[Untracked Files]で、[View options]をクリックし、[Switch to Tree View]を選択し(すでにツリービューにない場合)、プロジェクトのルートフォルダーを右クリックして、[ Add ]を選択します。

ここに画像の説明を入力してください


0

私はいつもこれを忘れているので、これは自分にとってはもっと便利ですが、VSを使用している他の誰かを助けるかもしれません。

Visual Studioにはソリューションの概念があります。ただし、gitでは、ローカルブランチとリモートブランチによって追跡されるgitリポジトリの概念があります。gitに追加されるすべてのファイルとフォルダーはローカルです。

Visual Studio Solutionsに戻ると、標準テンプレートプロジェクトを作成すると、そのソリューションのローカルにすべてのプロジェクトが作成されます。

したがって、問題は、ソリューションのローカルでないプロジェクトまたはgitを追加すると発生します。ソリューションファイル.slnはプロジェクトの場所で更新されますが、プロジェクトの実際のコンテンツ、プロジェクトファイル、およびフォルダーは、別のディレクトリまたは別のネットワークドライブまたは1つのFTPサーバーにあるため、gitに追加できません。 etc ....これは、.slnファイルでのみコンパイルされるプロジェクトファイルへの参照のみが必要な場合、またはそれらをgitまたはgithubリポジトリにソースする場合に適しています。しかし、実際のファイルがローカルでgitによって追跡されることは望ましくありません。

これを修正するには(つまり、それらをgitリポジトリに追加したい場合)、対象のリモートファイルをソリューションとそのプロジェクトファイルの範囲内でローカルに移動するだけです。


0

Visual Studio 2015でこれを行う方法を次に示します。

  1. プロジェクトを開き、[ツール] >> [オプション] >> [ソース管理]タブに移動して、ソース管理として[Git]を選択します。 ここに画像の説明を入力してください

  2. [ファイル]メニューに移動し、[ソース管理に追加]を選択します。

これは基本的に、すべてのベルとホイッスルを作成するVisual Studioによって「git init」を実行することです(ユーザー固有のファイル、一時ファイル、ディレクトリなどを無視するようにファイルを無視するようにセットアップします)。

基本的に、gitリポジトリはローカルで正しく作成されています(このフォルダーには無視したい多くのファイルが含まれているため、これはVSプロジェクトの主要なステップです)。

これで、このgitリポジトリをgit bash(Visual Studio外)のGitHub、BitBucketなどの他のgitに接続できます。

ここでこの作業ディレクトリでGit Bashセッションを開始し、BitBucketを使用しているので、そこに表示される指示に従います(そこから以下の行をコピーするだけです)。

git remote add origin https://yourusername@bitbucket.org/yourusername/hookdemo.git

git push -u originマスター

それでおしまい。

その後は、gitコマンドライン自体でリポジトリを管理できるようになりました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.