我正在尝试将现有项目置于Git源代码控制下,但在几件事上还不清楚。
我已经在线设置了“ Team Foundation Service” Git帐户。
我目前在我的Projects文件夹中有一个ASP.NET MVC 4解决方案。我已经在本地创建了一个Git“存储库”(当前是一个空文件夹)。这应该只是我在Projects中当前的应用程序文件夹吗?还是需要复制?
如何将现有文件放入在线存储库?
我正在尝试将现有项目置于Git源代码控制下,但在几件事上还不清楚。
我已经在线设置了“ Team Foundation Service” Git帐户。
我目前在我的Projects文件夹中有一个ASP.NET MVC 4解决方案。我已经在本地创建了一个Git“存储库”(当前是一个空文件夹)。这应该只是我在Projects中当前的应用程序文件夹吗?还是需要复制?
如何将现有文件放入在线存储库?
Answers:
我一直在寻找类似的问题-我设法为现有项目文件初始化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,然后转到Solution Explorer,右键单击解决方案,然后单击Commit。
然后,这将提交您现有解决方案和本地存储库之间的所有差异,实质上是使用所有这些新文件对其进行更新。给它一个默认的提交名称“ initial files”或随便浮动并提交的内容。
然后,只需在下一个屏幕上单击“ 同步”,然后放入EMPTY GitHub存储库URL。确保它为空,否则您将遇到master分支冲突,并且不允许您这样做。因此,要么使用一个新的存储库,要么删除您以前搞砸的旧存储库。请记住,这是Visual Studio 2013,因此您的里程可能会有所不同。
只需右键单击您的解决方案,然后选择添加到源代码管理。然后选择Git。
现在,您的项目已添加到本地源代码管理中。右键单击您的文件之一,然后选择提交。
然后输入提交消息并选择Commit。然后选择同步以将您的项目与GitHub同步。它需要一个Git存储库。转到GitHub,创建一个新的存储库,复制存储库链接,然后将其添加到您的远程源代码控制服务器中。选择发布。
就这样。
使用SourceTree:
在解决方案资源管理器中右键单击解决方案名称。选择“添加到源代码管理”。
然后转到SourceTree,然后选择Clone / New。选择添加工作文件夹,然后指向您刚刚在解决方案中创建的新Git位置。
转到获取空Git(Bitbucket或GitHub)的克隆地址,然后返回SourceTree,右键单击Remotes并添加New Remote。(请注意,在现代版本中,请转至存储库 → 添加远程...。在该框中粘贴您的URL,然后点击OK。
这是您进行初始提交和推送的方式。
最简单的方法显然是在MSDN文章“ 与Visual Studio 2017和VSTS Git共享代码”中所述。
在Visual Studio 2015上,我最终使它起作用的唯一方法是git init
使用命令行从目录的根目录运行。然后我进入团队资源管理器并添加了本地git存储库。然后,我选择了该本地git存储库,转到“设置”->“存储库设置”,并添加了我的远程存储库。这就是我最终能够将Visual Studio集成到git中以使用现有项目的方式。
我阅读了所有答案,但没有一个对我有用。我去了File-> Add To Source Control,假定它基本上与相同git init
,但是它似乎没有初始化我的项目,因为当我随后进入Team Explorer时,所有选项均灰显。同样,“更改”对话框中也不会显示任何内容。另一个答案是,我只需要在Team Explorer中创建本地存储库,然后我的更改就会显示出来,但是那也不起作用。仅在我通过命令行初始化项目后,Team Explorer上的所有Git选项才起作用。
我是Visual Studio的新手,所以我不知道我是否错过了显而易见的事情,但是看来我的项目不是从Visual Studio初始化的。
首先创建一个具有所需相对路径的“解决方案文件夹”。请注意,Visual Studio 2012不会创建具有相同相对路径的系统文件夹。
现在,在“解决方案文件夹”中添加一个新项目,但是在定义它时必须小心,系统中的相对路径与新的“解决方案文件夹”的相对路径匹配。如果所需的系统文件夹不存在,Visual Studio 2012现在将为新项目创建它。(如上所述,当您添加新的“解决方案文件夹”时,它不会这样做。)
如果要添加具有匹配的相对路径的现有文件,则必须首先从Visual Studio外部在匹配的系统相对路径中创建文件。然后,您可以在Visual Studio中添加现有文件。
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结合使用的VS2017 / VS2019(甚至可能更早,但我尚未测试)的流程大大简化了:
在GitHub中创建一个空的存储库=> https://github.com/ /.git
请遵循以下指示:((可选地添加到源代码管理以进行git初始化)->团队资源管理器->同步->发布到GitHub- > https://github.com/ /.git
我总是忘记了这一点,所以这对我自己来说更多,但也许可以帮助其他使用VS的人。
Visual Studio具有解决方案的概念。但是,在git中,它具有由本地和远程分支跟踪的git存储库的概念。所有添加到git的文件和文件夹都是本地的。
现在回到创建标准模板项目时的Visual Studio解决方案,它会在该解决方案本地创建所有项目。
因此,当您添加不在解决方案或git本地的项目时,就会发生此问题。发生的情况是,解决方案文件.sln已使用项目位置更新,但是无法将项目,项目文件和文件夹的实际内容添加到git中,因为它们位于单独的目录或单独的网络驱动器或某个ftp服务器中等等。如果您只希望引用仅在.sln文件中编译的项目文件的引用,或者希望将其来源以单独的git或github存储库,则可能更可取。但是您不希望git在本地跟踪实际文件。
为了解决这个问题(即,您要将它们添加到git存储库中),只需在解决方案及其项目文件的范围内移动所需的远程文件,使其位于本地即可。
这是在Visual Studio 2015中执行的方法。
这实际上是通过Visual Studio创建所有铃声(通过设置忽略相应的文件,例如忽略用户特定的文件,临时文件,目录等)来执行“ git init”。
基本上,您的git信息库是在本地正确创建的(这是VS项目的主要步骤,因为此文件夹包含许多我们要忽略的文件)。
现在,您可以将此git存储库连接到git bash(Visual Studio外部)中的任何其他git,如GitHub,BitBucket等。
我现在在此工作目录中启动Git Bash会话,并且由于我使用BitBucket,因此请按照此处给出的说明进行操作(只需从此处复制下面的行)。
git remote add origin https://您的用户名@ bitbucket.org /您的用户名/hookdemo.git
git push -u原始主机
而已。
之后,由于现在可以正确设置仓库,因此您可以在git命令行本身上管理仓库。