如何从共享服务器中提取git repo并将其推回?

如何从共享服务器中提取git repo并将其推回?,git,version-control,Git,Version Control,我正在学习Git,我在godaddy上有一个网站。使用“gitbash”工具,我使用gitinit将其初始化为Git repo 这就是我所做的细节 使用gitbash,我将SSH连接到远程godaddy服务器,如下所示 SSH我的用户-name@177.62.28.96,然后运行以下git命令将现有文件初始化为git repo。 git init,git add*git commit 现在它被命名为回购协议的主分支 这就是我想做的 我想把这个git repo拉到一个本地文件夹中,进行更改,然后g

我正在学习Git,我在godaddy上有一个网站。使用“gitbash”工具,我使用gitinit将其初始化为Git repo

这就是我所做的细节

使用gitbash,我将SSH连接到远程godaddy服务器,如下所示

SSH我的用户-name@177.62.28.96,然后运行以下git命令将现有文件初始化为git repo。 git init,git add*git commit

现在它被命名为回购协议的主分支

这就是我想做的

我想把这个git repo拉到一个本地文件夹中,进行更改,然后git将其推回

这个问题在这里再次被打开,这是为什么 这是因为@dendress的答案表明,应该将远程回购初始化为裸回购。这个答案的问题是,虽然它成功地推送了,但更改并没有反映在远程文件上

我就是这么做的 文件表明,在裸回购中,没有工作树。因此,变化无法反映出来。所以我所做的是

我删除了.git/文件夹, 使用git init重新初始化目录, 使用git克隆我的用户在我的本地计算机中克隆了它-name@177.62.28.96并做出了改变 在服务器上,我通过git config-bool core.config true将repo更改为bare 我在本地机器上运行git push origin master 这是它的输出 Pareek@ramMINGW64/c/wamp/www/git/sarv/sarv-master $git推送原始主机 pareekbhagu@177.62.28.96的密码: 计数对象:5,完成。 增量压缩最多使用4个线程。 压缩对象:100%5/5,完成。 写入对象:100%5/5442字节| 0字节/秒,完成。 总计5个增量4,重复使用0个增量0 到pareekbhagu@166.62.28.96: 8d4041d..7906308主控->主控

我认为这意味着推动是成功的,但是**

如何使更改反映在远程回购协议上
**

您必须首先将存储库克隆到本地计算机。这可以通过git clone命令完成,如

git clone my-user-name@177.62.28.96:path/to/git/repo
之后,您可以进行编辑,然后使用

git push origin
注:

您应该将服务器上的存储库初始化为一个裸存储库git init-bare,因为您希望推送到它。 如果要在主分支以外的其他分支上进行更改,请在克隆存储库后运行git checkout-u branch name。
你也应该看看这个叫做Pro-Git的东西——它是免费的,免费是好的,对吗

很抱歉,我对git很陌生,你是说运行git remote add master吗http://my-domain.com 你不应该这样做。您已经将整个主目录转换为Git存储库。您需要选择一个特定的子文件夹,并在其中运行git init/git add/git命令。上面写着……克隆到‘177.62.28.96’。。。这是否意味着它正在将本地文件克隆到服务器。。。我应该继续吗?你确定你找到了存储库的路径吗?在我的示例中,它应该打印:克隆到“repo”中,因为在我的示例中,repo是包含git存储库的文件夹。请检查您是否指定了git存储库的正确路径,或者粘贴您在此处运行的命令。我有一个testgit文件夹。177.62.28.96:/testgit。。在这个文件夹中,我运行了git init命令。现在它在177.62.28.96:/testgit/.git中创建了一个文件夹.git。但我收到的消息是致命的:“/testgit”似乎不是git存储库致命的:无法从远程存储库读取。请尝试将服务器上的存储库初始化为一个裸的git init-bare,然后像添加、提交、克隆之前那样尝试其余的操作。如果你想推送到一个存储库,你应该总是让它成为一个裸存储库。现在就可以了。谢谢一个小编辑:代替git克隆我的用户-name@177.62.28.96:/path/to/git/repo请将其编辑为git克隆我的用户-name@177.62.28.96:path/to/git/repo。。您给出的语法是“scp样式语法”,它不起作用。。。检查是不够的,阅读需要太多的时间。人们无法阅读地球上的每一件事物,这就是为什么StackOverflow在商业上的原因如果可以,请回答。第二点-我知道git的基本知识。所以你可以继续回答我的问题。我向你保证,无论你说什么废话,我都能听懂。这本书索引得很好,你可以零零碎碎地读;那就看看吧。你不是通过每个人都告诉你一切来学习的,你是通过阅读文档来学习的——Git有大量的资源——谷歌是你的朋友。