Существует большая философия для этой проблемы. Проще всего сделать это, чтобы дать определенный размер шрифта телу (i recommand 10), а затем весь другой элемент будет иметь свой шрифт в em или rem. Я дам вам и пример, чтобы понять эти единицы. Em всегда относится к своему родителю
body{font-size:10px;}
.menu{font-size:2em;} /* that means 2*10px = 20px */
.menu li{font-size:1.5em;} /* that means 1.5*20px = 30px */
Rem всегда относится к телу
body{font-size:10px;}
.menu{font-size:2rem;} /* that means 2*10px = 20px */
.menu li{font-size:1.5rem;} /* that means 1.5*10px = 15px */
И чем вы могли бы создать скрипт, который изменил бы размер шрифта относительно вашего контейнера ширина. Но это не то, что я бы рекомендовал. Потому что в контейнере ширины 900px, например, у вас будет элемент p
с размером шрифта 12px, скажем так. И на вашей идее, которая станет на контейнере шириной 300 пикселей с размером шрифта 4px. Должен быть нижний предел. Другие решения были бы с медиа-запросами, так что вы могли бы установить шрифт для разных ширины.
Но решения, которые я бы рекомендовал, это использовать библиотеку javascript, которая поможет вам в этом. И fittext.js , который я нашел до сих пор.
С помощью git-subtree есть еще более простой способ. Предполагая, что вы хотите, чтобы ваша папка «выводила» в качестве корня в Heroku, вы можете сделать:
git subtree push --prefix output heroku master
В настоящее время отображается, что git-поддерево включено в git-core, но я не узнайте, выпущена ли эта версия git-core еще.
После долгого и трудного месяца, когда я пытаюсь разузнавать разные вещи и укусаться каждый раз, когда понял,
только потому, что Heroku использует репозиторий git как механизм развертывания, вы не должны рассматривать его как репозиторий git
он мог бы быть rsync так же хорошо, они пошли на git, не отвлекайтесь из-за этого
, если вы это сделаете, вы открываете себе все виды травм. Все вышеупомянутые решения где-то удручающе:
bundle deploy
- сбой, вам нужно связывать обновление каждый раз, когда вы пытаетесь добавить движок в качестве :path
+ bundle deploy
- fail, команда dev считает :path
опцией «вы», не используя Bundler с этой опцией gem ", поэтому он также не будет поставляться для производства, при каждом обновлении движка требуется обновить решение rails stack -_- /vendor
в разработке и фактически копировать файлы для производства В рассматриваемом приложении есть 4 проекта в git root:
Все проекты имеют символическую ссылку vendor/common
, смотрящую на корень механизма common
, При компиляции исходного кода для развертывания в heroku нам необходимо удалить symlink и rsync, чтобы его физически находить в папке поставщика каждого отдельного хоста.
Работает очень очень приятно в дикой природе с минимальными (нет?) проблемами 6 месяцев
Вот сценарий https://gist.github.com/bbozo/fafa2bbb8c7b12d923f [/ g 28]
@AdamBuczynski, это никогда не бывает так просто.
В первую очередь у вас всегда будет своя производственная и тестовая среда - и куча функциональных кластеров в худшем случае - внезапно одна папка должна отображать проекты n heroku в качестве довольно основного требования, и все это необходимо каким-то образом организовать так, чтобы сценарий «знал», какой источник вы хотите развернуть, где
2nd вы захотите разделить код между проектами - теперь приходит часть sync_common
, shennanigans с символическими ссылками в разработка заменена фактическим rsynced кодом на Heroku, потому что Heroku требует определенной структуры папок, а bundler и rubygems действительно действительно действительно делают вещи ужасно очень плохо, если вы хотите извлечь общие потоки в gem
3rd, что вам нужно чтобы подключить CI, и он немного изменится по мере того, как должны быть организованы подпапки и git-репо, в конце концов, в самом простом случае использования вы получите вышеупомянутый смысл.
В других проектах мне нужно подключайте Java-сборки, когда вы продаете программное обеспечение нескольким клиентам, нужно будет фильтровать модули, которые устанавливаются в зависимости от требований к установке, и еще что-то,
. Я действительно должен рассмотреть возможность объединения вещей в Rakefile или что-то еще и сделать все так ...
У меня была аналогичная проблема. В моем случае никогда не было проблемой сдуть все в репозитории heroku и заменить его тем, что находится в моем подкаталоге. Если это ваш случай, вы можете использовать следующий сценарий bash. Просто поставьте его в свой каталог приложений Rails.
#!/bin/bash
#change to whichever directory this lives in
cd "$( dirname "$0" )"
#create new git repository and add everything
git init
git add .
git commit -m"init"
git remote add heroku git@heroku.com:young-rain-5086.git
#pull heroku but then checkback out our current local master and mark everything as merged
git pull heroku master
git checkout --ours .
git add -u
git commit -m"merged"
#push back to heroku, open web browser, and remove git repository
git push heroku master
heroku open
rm -fr .git
#go back to wherever we started.
cd -
Я уверен, что есть много способов улучшить это - так что не стесняйтесь рассказывать мне, как это сделать!
+1
Спасибо. Это решение отлично работает, если вы не заботитесь о git logs на Heroku. Можно выполнить настройку над сценарием в случае, если есть некоторые папки, которые вы хотите игнорировать, в рамках вспомогательного пути приложения для развертывания. Например, я не хотел папку spec
на героку. Пример Gist
– ch4nd4n
6 November 2012 в 15:19
+1
, но вы можете упростить, не вытягивая и не сливаясь в masterk героя, а вместо этого просто git push --force heroku master
– M.K. Safi
5 April 2015 в 01:42
Я начал с того, что сказал Джон Берриман, но на самом деле это может быть проще, если вы вообще не заботитесь о истории героев.
cd bin
git init
git add .
git commit -m"deploy"
git push git@heroku.com:your-project-name.git -f
rm -fr .git
Я думаю, что официальный git subtree
- лучший ответ, но у меня возникла проблема с поддеревом для работы с моим mac.
--force
, используйтеgit push heroku `git subtree split --prefix output master`:master --force
. См. stackoverflow.com/a/15623469/2066546 . – fiedl 7 November 2014 в 22:24git subtree push --prefix output heroku +refs/tags/v1.0.0:refs/heads/master
. Но это не работает и возвращается с+refs/tags/v1.0.0:refs/heads/master does not look like a ref
. Мне нужна такая функциональность, чтобы позднее можно было использовать роль конкретных тегов. Каков правильный способ сделать это? – and-dev 4 December 2014 в 09:37