究竟是git init
什么?我必须每台计算机执行一次,或者每个使用git的项目执行一次吗?我下载了我的项目,git clone
并让它工作,但现在它也存储我的项目C:/Users/myUser/git
,是某个文件夹或我可以更改它?
我真的不太了解那个文件夹,它看起来像是一个本地git仓库或其他东西,但是"管理"它,或者它为什么使用这条路径,你能解释一下吗?
这就是我的理解,如果我不正确,请修理我,需要直截了当地说明事实:
git init
是为每个项目git commit
都会更新该文件夹.git push
,它需要来自该本地存储库,并放入远程存储库.git pull
sle*_*man 36
这实际上是很多问题和误解.我不确定我是否能够解决所有问题所以我只会解决直接问到的问题.
git init适用于每个项目
差不多正确.git init
用于开始在不在git下的项目上使用git.对于已经使用git的项目git clone
.
"用户"下的git文件夹是本地仓库
差不多正确.该文件夹实际上.git
不是git
.这来自unix约定,所有以点开头的文件和文件夹都被视为隐藏.
其次,该文件夹不在您的用户文件夹下.它位于您的项目文件夹下.所以文件夹C:/Users/myUser/
是一个项目.如果这不是您的意图,那么您很可能git init
在User文件夹中意外执行了.
每个项目.git
在项目的根目录中都有一个文件夹,即项目的存储库.这是git与svn或cvs相比如此之快的原因之一 - 整个存储库在本地硬盘上处理而没有任何网络流量.
当我做git push时,它需要来自本地仓库,然后放到远程
正确,但仅限于具有遥控器的回购(通常是通过使用git clone
复制远程回购创建的回购).
请注意,远程仓库不需要在另一台计算机上.您可以将项目从本地文件夹git克隆到另一个文件夹,然后可以将更改从新文件夹推回到原始文件夹.
该git clone
命令会自动为您的repo设置必要的配置以连接回远程.但您也可以手动配置设置的回购设置git init
以连接到远程.
什么"管理"它
该.git
文件夹管理项目的回购.Git不作为服务器运行*.相反,该.git
文件夹充当所有git命令与之通信的本地"服务器".基本上,运行git命令会编辑.git
文件夹的内容.
*注意:远程回购会运行服务器,以便您可以连接它们.但从技术上讲,他们并不是真正的git服务器.它们是git可以下载并上传到的文件服务器.