13

假设我有我的应用程序的本地副本,我将其推送到 github,然后使用 git-ftp 将任何更改上传到我的服务器。

我会首先使用:

$ git ftp init -u <user> -p - ftp://host.example.com/public_html

这会将我所有的文件上传到服务器并git push用于将来的上传,对吗?

但是,如果我的服务器上已经有一个副本并想在本地设置它怎么办?我尝试下载我的应用程序文件,使用git init,将所有内容推送到 github,然后当我尝试使用时git ftp push收到此错误:

fatal: Could not get last commit. Network down? Wrong URL? Use 'git ftp init' for the inital push., exiting...

然后我使用了该git ftp init命令并且它有效,但它重新上传了所有内容。

有什么方法可以设置它而无需重新上传所有内容并开始使用git ftp push

4

1 回答 1

20

从手册页git-ftp

catchup
    Uploads current SHA1 to log, does not upload any files.

    This is useful if you used another FTP client to upload the
    files and now want to remember the SHA1.

因此,如果您确定您的 git 存储库与 FTP 服务器同步,请git ftp catchup代替git ftp init第一次运行,它会将当前提交哈希上传到服务器,但不会更改任何文件。在那之后,使用git ftp push它来同步未来的提交。

于 2013-02-20T22:33:10.550 回答