为什么在 Git 克隆到 SSH 后找不到我的存储库?

Why can't I find my repo after Git Clone into SSH?

我是一个新手程序员,正在经历这个 Test-Driven-Development tutorial。我已经到了我需要启动服务器并注册一些域名的章节,然后我可以将这些域名用于我的 Django 项目,到目前为止我已经能够完成所有事情。

教程中的这一步让我git clone将我的repo放到服务器中,切换到repo目录,然后运行python3 manage.py runserver得到预期的"django is not installed on the server"错误。

问题是虽然我的存储库似乎已成功克隆,但我看不到该目录。这是我看到的错误:

user@ip-172-31-41-131:~$ git clone https://github.com/user/superlists.git \~/sites/$SITENAME/source
Cloning into '~/sites/staging.user.com/source'...
remote: Counting objects: 530, done.
remote: Compressing objects: 100% (363/363), done.
remote: Total 530 (delta 153), reused 521 (delta 148), pack-reused 0
Receiving objects: 100% (530/530), 699.59 KiB | 0 bytes/s, done.
Resolving deltas: 100% (153/153), done.
Checking connectivity... done.
user@ip-172-31-41-131:~$ cd ~/sites/$SITENAME/source
-su: cd: /home/user/sites/staging.user.com/source: No such file or directory

我原以为自从 Git 成功克隆到 ~/sites/$SITENAME/source 后,该目录就会自动创建。但是我去找的时候没找到:

user@ip-172-31-41-131:~$ cd sites
user@ip-172-31-41-131:~/sites$ ls
staging.user.com
user@ip-172-31-41-131:~/sites$ cd staging.user.com
user@ip-172-31-41-131:~/sites/staging.user.com$ ls
database  static  virtualenv

这是我在 SO 上发布的第一个问题。我以前来过这里很多次,总是看看是否有其他人和我有相同的 problem/question,但我找不到其他人遇到过这种情况 - 虽然我承认我不确定最好的问它的方式。

完全免责声明:本教程强烈建议使用 Django v1.8,但是我一直在使用 v1.9 并且直到现在都能够搜索任何奇怪的错误,但我看不出这有什么关系,因为服务器上什至没有安装 Django。如果我说的不对,望指教。

问题是您正在转义目标路径中的 ~,因此它被逐字处理,而不是扩展到您的主目录(您现在将有一个名为 ~ 的目录你的文件系统的根目录!)。

这应该有效:

$ git clone https://github.com/user/superlists.git ~/sites/$SITENAME/source

(注意,~ 前没有反斜杠)。 git 还应该告诉您它克隆到的扩展路径:

Cloning into '/home/user/sites/staging.user.com/source'...