Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git和eclipse_Eclipse_Git_Version Control - Fatal编程技术网

git和eclipse

git和eclipse,eclipse,git,version-control,Eclipse,Git,Version Control,我完全迷上了git,我读了文档,但一点线索也没有。我已经使用CVS几十年了,只是需要一些安装方面的帮助 我在一台linux机器上设置了git存储库(创建了一个目录并运行git init)。我有ssh访问机器的权限 我有一个EclipseJava项目,我想将任何东西提交/推送到这个git存储库 我在Eclipse中安装了egit,但它没有给我任何选项来设置url或主机名:port等 此外,它还希望使项目所在的存储库位于相同的目录中。这不可能是对的 如何让eclipse将其提交到linux机器上

我完全迷上了git,我读了文档,但一点线索也没有。我已经使用CVS几十年了,只是需要一些安装方面的帮助

  • 我在一台linux机器上设置了git存储库(创建了一个目录并运行git init)。我有ssh访问机器的权限
  • 我有一个EclipseJava项目,我想将任何东西提交/推送到这个git存储库
  • 我在Eclipse中安装了egit,但它没有给我任何选项来设置url或主机名:port等
  • 此外,它还希望使项目所在的存储库位于相同的目录中。这不可能是对的
如何让eclipse将其提交到linux机器上的git存储库


我不知道人们在这个程序中看到了什么,我从来没有被CSV搞糊涂过,但现在再也没有人支持或允许CVS了。

Git是一个分布式版本控制系统(DVCS)。这意味着您将在本地计算机上拥有一个存储库。你需要仔细阅读“推”、“取”和“拉”。这都是基于“远程”的概念,即你如何告诉一个存储库另一个存储库的位置

您可以预期在工作目录的根目录中将有一个.git文件夹

我会在以下任何地方快速阅读git:

gitready.com
progit.org/book
git-scm.com

freenode上还有#git频道。

你需要改变你的想法。特别是,您会说“进一步,它希望使项目所在的存储库位于相同的目录中,这是不对的”。但这是正确的。存储库是本地的。这是与CVS的根本区别之一。在本地存储库中进行所有更改,并且只在您想要发布时才推送到远程存储库。

git的设计目标解释得很好

它可能有助于从CVS转移所需的范式


Git是为了控制Linux内核的提交而开发的,因此支持版本控制大型分布式项目的设计目标是关键的一个。

< P>您可以将本地存储库视为“智能”工作目录。仍然可以使用集中式集成存储库,类似于CVS中的中央存储库,但术语略有不同:

  • “签入到存储库”现在是“推送到集成存储库”
  • “从存储库签出”现在是“从集成存储库中提取”
真正的魔法始于存储库被克隆到本地计算机。你得到了工作目录和很多新的机会

  • 同一工作目录中有多个开发人员分支。您可以同时独立使用多个功能,并且可以轻松地在它们之间切换。例如,我有修复bug的分支(每个bug一个分支)和同一存储库中的新特性(每个特性一个分支)。开关是一对命令/点击
  • 您可以对部分完成的工作进行频繁的本地提交,并快速回滚到存储库的任何状态。完成功能或修复错误后,您可以在“推送到集成存储库”之前通过组合和重新安排提交来“完善”历史记录
  • 有很好的机会挖掘项目历史记录,这非常快:所有历史记录都已经在您的计算机上
  • 您可以轻松地将更改从一个分支转移到另一个分支。例如,如果特定的更改在多个分支中是有用的

这是否意味着它位于我的项目所在的目录中?那么,我在Windows上如何将它推送到Linux机器上的正确位置,以便其他人可以使用它?@Bodger,是的,您的工作目录和本地存储库是相同的。您可以将linux存储库克隆到windows计算机上的本地存储库,然后从windows计算机提交以将更改推送到linux存储库。您需要使用“git remote add origin”或“git clone”添加远程存储库(如果已存在)您还应该尽早决定是否为一个平台开发,如果是,请将autocrlf设置设置为false。对其他任何人的回购协议也要这样做,否则他们会遇到行尾差异登记为无变化的问题。希望这有帮助。