我正在尝试将现有项目置于 Git 源代码控制之下,但我不清楚几件事。
我已经在线设置了一个“团队基础服务”Git 帐户。
我目前有一个 ASP.NET MVC 4 解决方案 - 在我的项目文件夹中。我在本地创建了一个 Git“存储库”(当前是一个空文件夹)。这应该只是我当前在项目中的应用程序文件夹吗?还是需要复印件?
如何将现有文件放入在线存储库?
我正在尝试将现有项目置于 Git 源代码控制之下,但我不清楚几件事。
我已经在线设置了一个“团队基础服务”Git 帐户。
我目前有一个 ASP.NET MVC 4 解决方案 - 在我的项目文件夹中。我在本地创建了一个 Git“存储库”(当前是一个空文件夹)。这应该只是我当前在项目中的应用程序文件夹吗?还是需要复印件?
如何将现有文件放入在线存储库?
我四处寻找类似的问题 - 我设法为现有项目文件初始化 Git 存储库的方式是这样的(免责声明:这是在 Visual Studio 2013 Express 中完成的,没有安装 Team Foundation Server):
这对我来说已经完成了 - 假设为您设置了 Git,您可以转到菜单View → Team Explorer,然后双击项目文件的存储库,并进行初始提交(确保添加您想要的任何文件)。
git init
在解决方案文件夹中执行。这是创建存储库文件夹的正确方法。.gitignore
文件,这样你就不会提交不必要的东西。git add
git commit
git remote add origin <proper URL>
git push
你的代码或者,这里有使用 Visual Studio 集成的详细指南。
在 Visual Studio 中苦苦挣扎之后,我终于找到了比它应该花费更长的时间的答案。
为了将没有源代码控制的现有项目放到现有的 EMPTY(这很重要)GitHub 存储库中,过程很简单,但很棘手,因为您的第一个倾向是使用 Team Explorer,这是错误的,这就是为什么你有问题。
首先,将其添加到源代码管理中。上面有一些解释,每个人都能做到这一点。
现在,这会打开一个空的 LOCAL 存储库,没有人告诉您的技巧是完全忽略 Team Explorer 并转到解决方案资源管理器,右键单击解决方案并单击提交。
然后提交现有解决方案和本地存储库之间的所有差异,实质上是使用所有这些新文件更新它。给它一个默认的提交名称“初始文件”或任何浮动你的船并提交。
然后只需单击下一个屏幕上的同步并放入 EMPTY GitHub 存储库 URL。确保它是空的,否则你会有主分支冲突,它不会让你。因此,要么使用新的存储库,要么删除您之前搞砸的旧存储库。请记住,这是 Visual Studio 2013,因此您的里程可能会有所不同。
只需右键单击您的解决方案并选择Add to source control。然后选择 Git。
现在您的项目已添加到本地源代码管理中。右键单击您的文件之一,然后选择Commit。
然后输入提交消息并选择Commit。然后选择同步以将您的项目与 GitHub 同步。它需要有一个 Git 存储库。转到 GitHub,创建一个新存储库,复制存储库链接,并将其添加到您的远程源代码控制服务器。选择发布。
就这样。
最简单的方法显然是如 MSDN 文章Share your code with Visual Studio 2017 and VSTS Git中所述。
使用SourceTree:
在解决方案资源管理器中右键单击解决方案名称。选择“添加到源代码管理”。
然后前往 SourceTree,然后选择Clone/New。选择添加工作文件夹并指向您刚刚在解决方案中创建的新 Git 位置。
去获取一个空 Git(Bitbucket 或 GitHub)的克隆地址,然后返回 SourceTree,右键单击Remotes并添加New Remote。(注意在现代版本中,转到存储库→添加远程...。将您的 URL 粘贴到该框中并点击OK.
这就是您可以进行初始提交和推送的方式。
在 Visual Studio 2015 上,我最终让它工作的唯一方法是git init
使用命令行从我的目录的根目录运行。然后我进入 Team Explorer 并添加了一个本地 git 存储库。然后我选择了本地 git 存储库,转到 Settings->Repository Settings,并添加了我的 Remote Repo。这就是我最终能够集成 Visual Studio 以将我现有的项目与 git 结合使用的方式。
我阅读了所有答案,但没有一个对我有用。我去了 File->Add To Source Control,这应该与 基本相同git init
,但它似乎没有初始化我的项目,因为当我然后去 Team Explorer 时,所有选项都变灰了。更改对话框中也不会显示任何内容。另一个答案说我只需要在团队资源管理器中创建一个本地存储库,然后我的更改就会显示出来,但这也不起作用。只有在我通过命令行初始化项目后,团队资源管理器上的所有 Git 选项才有效。
我是 Visual Studio 的新手,所以我不知道我是否错过了一些明显的东西,但似乎我的项目没有从 Visual Studio 初始化。
首先使用所需的相对路径创建一个“解决方案文件夹”。请注意,Visual Studio 2012 不会创建具有相同相对路径的系统文件夹。
现在在“解决方案文件夹”中添加一个新项目,但在定义它时必须小心,系统中的相对路径与新“解决方案文件夹”的相对路径匹配。如果您想要的系统文件夹不存在,Visual Studio 2012 现在将为新项目创建它。(如上所述,当您添加新的“解决方案文件夹”时,它不会这样做。)
如果要添加具有匹配相对路径的现有文件,则必须首先从 Visual Studio 外部在匹配的系统相对路径中创建文件。然后您可以在 Visual Studio中添加现有文件。
VS2017 / VS2019(可能更早,但我没有测试过)结合GitHub,过程大大简化:
在 GitHub 中创建一个空存储库 => https://github.com/ /.git
为 Visual Studio安装GitHub 扩展
请按照以下说明操作:(可选择添加到 git 初始化的源代码控制)-> 团队资源管理器 -> 同步 -> 发布到 GitHub -> https://github.com/ /.git
如果所需的存储库已经存在(可能在 GitHub 上),那么您可以将其克隆到本地系统,然后将解决方案目录复制到其中。然后添加文件,提交文件,推送本地。这将解决方案放在存储库中。
我总是忘记这一点,所以这更适合我自己,但也许可以帮助其他人使用 VS。
Visual Studio 有解决方案的概念。然而,在 git 中,它具有由本地和远程分支跟踪的 git 存储库的概念。添加到 git 的所有文件和文件夹都是本地的。
现在回到 Visual Studio 解决方案,当您创建标准模板项目时,它会在本地创建该解决方案的所有项目。
因此,当您添加一个不是本地解决方案或 git 的项目时,就会出现问题。发生的情况是解决方案文件 .sln 随项目位置更新,但项目、项目文件和文件夹的实际内容无法添加到 git,因为它们位于单独的目录或单独的网络驱动器或某个 ftp 服务器上等等......如果您只想引用仅在 .sln 文件中编译的项目文件,或者您希望将它们提供给单独的 git 或 github 存储库,这可能会更可取。但是您不希望 git 在本地跟踪实际文件。
要解决这个问题(即您想将它们添加到您的 git 存储库),您只需在解决方案及其项目文件的范围内移动感兴趣的远程文件,以便它们是本地的。
我已按照以下步骤将现有项目添加或导出到 GitHub,它应该适用于所有环境。
Visual Studio 中的 Git - 添加现有项目;如何将本地存储库发布到 GitHub、GitLab 等上的项目。
因此,您已经创建了一个解决方案,并且希望通过您的 Git 帐户将其上传和版本控制器。Visual Studio 2015 在 Team Explorer 中为此提供了工具。
正如 Meuep 提到的,加载您的解决方案,然后导航File
>> Add to Source Control
。这相当于git init
. 然后你会有这个:
现在,选择Settings
>> Repository Settings
并滚动到Remotes。
设置origin
(确保将这个保留名称放在那里)并设置 URI。
然后你可以使用Add
,Sync
和Publish
。
如果您想从 GitHub 打开现有项目,您需要执行以下操作(这些步骤仅适用于 Visual Studio 2013!!!!以及更新版本,因为在旧版本中没有内置 Git 安装):
团队资源管理器 → 连接到 teamProjects → 本地 GitRepositories →克隆。
从浏览器复制/粘贴您的 GitHub 地址。
为此项目选择本地路径。
以下是在 Visual Studio 2015 中的操作方法。
这实际上是通过创建所有花里胡哨的视觉工作室执行“git init”(相应地设置忽略文件,如忽略用户特定文件、临时文件、目录等)。
本质上,您的 git 存储库已在本地正确创建(这是 VS 项目的主要步骤,因为该文件夹包含许多我们想忽略的文件)。
现在,您可以在 git bash(Visual Studio 之外)中将此 git 存储库连接到任何其他 git,如 GitHub、BitBucket 等。
我现在在这个工作目录中启动 Git Bash 会话,因为我使用 BitBucket,所以我按照那里给出的说明进行操作(只需从那里复制下面的行)。
git 远程添加源 https://yourusername@bitbucket.org/yourusername/hookdemo.git
git push -u 起源大师
而已。
之后,您可以在 git 命令行本身上管理存储库,因为它现在已正确设置。
对我来说,已经创建了一个 Git 存储库(不是 GitHub),但是是空的。这是我将现有项目添加到 Git 存储库的解决方案:
.gitignore
文件。看到这一切直接在 Visual Studio 2015 中完成,没有像 Git 扩展这样的工具会很有趣,但是我在 Visual Studio 中尝试的东西不起作用(添加到源代码控制不适用于我的项目,添加远程没有帮助等)。