Поскольку строки C должны быть NUL завершены. Это означает, что последний символ вашей строки должен быть '\0'
. Вот как printf
(и все другие строковые функции C) знают, когда строка завершена.
Опция A:
git clone git@github.com:whatever folder-name
Следовательно, для right here
использование:
git clone git@github.com:whatever .
Опция B:
Перемещение .git
папка, также. Обратите внимание, что .git
папка скрыта в большинстве проводников графического файла, так убедиться показать скрытые файлы.
mv /where/it/is/right/now/* /where/I/want/it/
mv /where/it/is/right/now/.* /where/I/want/it/
первая строка захватывает все нормальные файлы, вторая строка захватывает точечные файлы. Это также possibe, чтобы сделать это в одной строке путем включения dotglob (т.е. shopt -s dotglob
), но это - вероятно, плохое решение, если Вы задаете вопрос этот ответ ответы.
Еще лучше:
Сохраняют Вашу рабочую копию где-то в другом месте и создают символьную ссылку. Как это:
ln -s /where/it/is/right/now /the/path/I/want/to/use
Для Вас случаются, это было бы чем-то как:
ln -sfn /opt/projectA/prod/public /httpdocs/public
, Который легко мог быть изменен на тест, если бы Вы хотели его, т.е.:
ln -sfn /opt/projectA/test/public /httpdocs/public
, не перемещая файлы. Добавленный -fn
в случае, если кто-то копирует эти строки (-f
сила, -n
, уже избегают некоторых часто нежелательные взаимодействия с и несуществующие ссылки).
, Если Вы просто хотите, чтобы это работало, используйте Опцию A, если кто-то еще собирается посмотреть на то, что Вы сделали, используйте Опцию C.
При перемещении файлов туда, где Вы хотите их, Вы также перемещаетесь .git
каталог? В зависимости от Вашей ОС и конфигурации, может быть скрыт этот каталог.
Это содержит repo и вспомогательные файлы, в то время как файлы проекта, которые находятся в Вашем /public
каталог, являются только версиями в в настоящее время фиксация контроля (основное ответвление по умолчанию).
Хотя все ответы выше хороши, я хотел бы предложить новый метод вместо того, чтобы использовать метод символьной ссылки в общедоступном каталоге HTML, как предложено ЛУЧШЕ ВСЕГО в принятом ответе. У Вас должен быть доступ к Вашему серверу виртуальные конфигурации хоста.
Это о конфигурировании виртуального хоста Вашего веб-сервера, непосредственно указывающего на каталог репозитория. В Apache можно сделать это как:
DocumentRoot/var/www/html/website/your-git-repo
Вот пример виртуального файла хоста:
<VirtualHost *:443>
ServerName example.com
DocumentRoot /path/to/your-git-repo
...
...
...
...
</VirtualHost>
Я думаю, что многие люди, задающие этот вопрос, следуют этому примеру. Если вы в каталоге, в который вы хотите выгружать содержимое репозитория git, запустите:
git clone git@github.com:whatever .
"." в конце указывает текущую папку как папку оформления заказа.