- cd sites/
- git clone [email protected]:webwest/basebest.ru.git
- cd basebest
- git status
- laravel new myapp (or) composer create-project --prefer-dist laravel/laravel myapp
git add -A
git commit -m "Init commit"
if you init project
git remote add origin ssh://[email protected]/webwest/agropostavka.app.git
git push -u origin master
git checkout -b fomin
#work...
git push origin fomin
/.gitignore
/node_modules
/public/hot
/public/storage
/storage/*.key
/vendor
/.idea
/.vagrant
Homestead.json
Homestead.yaml
.env
/packages
/public/uploads
/public/photos
/composer.lock
_ide_helper.php
/config/ide-helper.php
/config/ide-helper.php
/resources/assets/vendor
/storage/debugbar/
/public/mix.*.js
/public/mix.js
git config --global core.filemode false
git config --local core.filemode false
git config core.filemode false
используйте «git rm --cached <файл>…», чтобы убрать из индекса
Легковесные теги - это просто указатель на конкретный коммит. Аннотированные теги хранятся как стандартные объекты в базе данных Git. Они имеют контрольную сумму, имеют автора, адрес его электронной почты, а также дату; имеют сообщение коммита, и могут быть подписаны и проверены с GNU Privacy Guard (GPG). Обычно рекомендуется создать аннотированные теги, чтобы вы могли иметь всю эту информацию, но если вы хотите создать временный тег или по какой-то причине не хотите сохранять другую информацию, вам необходимо использовать легковесные теги.
Заходим из консоли GitBush в локальную версию проекта, находящегося на github для создания его версии. Выполняем команду
git tag -a v0.1 -m "my version 0.1"
опция -m задает меточное сообщение, которое будет храниться вместе с меткой. В этом варианте будет создан тег для последней версии, если нужно создать тег определенного коммита, добавте номер нужного коммита после tag, в этой команде. Чтобы посмотреть все метки, которые есть, команда:
git tag
Для просмотра конкретной метки
git show v0.1
Для отправки меток на GitHub
git push --tags
https://sites.google.com/site/sitsiliyaror/blogs/github/tags-metki
Номер версии ДОЛЖЕН состоять из X.Y.Z, где X, Y, и Z это положительные числа. X это Major версия, Y это Minor версия и Z это Patch версия. Каждый элеме ДОЛЖЕН увеличиваться с шагом один. Например: 1.9.0 -> 1.10.0 -> 1.11.0.
x.y.z - МАЖОРНАЯ.МИНОРНАЯ.ПАТЧ
- МАЖОРНУЮ версию, когда сделаны обратно несовместимые изменения API.
- МИНОРНУЮ версию, когда вы добавляете новый функционал, не нарушая обратной совместимости.
- ПАТЧ-версию, когда вы делаете обратно совместимые исправления.
При указании допустимых версий пакетов можно использовать точное соответствие
1.2.3
, диапазоны с операторами сравнения<1.2.3
, комбинации этих операторов>1.2.3 <1.3
, "последняя доступная"1.2.*
, символ тильды~1.2.3
и знак вставки^1.2.3
Например:
-
1.0.2
- точная версия -
>=1.0.2
-
1.0 - 2.0
- набор версий (включно) -
1.0.*
- эквивалент>=1.0 <1.1
-
~1.2.3
- разрешает увелечение последней цифры (эквивалент>=1.2.3 <1.3.0
) -
^1.2.3
- эквивалент>1.2.3 <2.0
-
~1
означает1.0.0 <= v < 2.0.0
-
~1.2
означает1.2.0 <= v < 1.3.0
. -
~1.2.4
означает1.2.4 <= v < 1.3.0
-
1.2.x 1.2.0
,1.2.1
и т.д., но не1.3.0
- composer require spatie/laravel-web-tinker:1.2.2
- composer require spatie/laravel-web-tinker:"^1.2"
- Создаем удаленный репозиторий, указывая имя учетной записи.
curl -u 'USER_NAME' https://api.github.com/user/repos -d'{"name":"demo"}'
- Вводим пароль от учетной записи:
Enter host password for user 'USER_NAME': Репозиторий demo создан.
Теперь выгружаем проект.
git remote add origin https://github.com/USER_NAME/demo.git git push -u origin master
git init
git status
git remote add origin [email protected]:fomvasss/youtube.git
git add -A
git commit -m "Initial commit v1.0"
git push origin master
git tag -a v1.0.0 -m "Release v1.0.0" (по последнему коммиту)
git push --tags / git push origin v1.0 (отправка всех тегов) / (отправка указаного тега)
git tag -d tag-name - удалить локальный тег
git push origin :refs/tags/tag-name - удалить тег на репозитории
If you want to rename a branch while pointed to any branch, do:
git branch -m <oldname> <newname>
If you want to rename the current branch, you can do:
git branch -m <newname>
A way to remember this, is -m is for "move" (or mv), which is how you rename files.
Иногда при работе с системой контроля версий Git бывают (редко, но все же) моменты, когда необходимо из истории коммитов удалить имеющийся тег.
Удаление тега Для локального репозитория данная операция проста до безбразия:
git tag -d tag_name
А для того чтобы убрать оный таг ещё и из репозитория, расположенного на удаленном сервере (GutHub, Gitorious, etc)
git push origin :refs/tags/tag_name
Перемещение тега А можно тег просто переместить на другой коммит. В локальном репозитрии создаем тег с таким же имене как и существующий, добавив ключи -f
git tag -f tag_name
Пушим (отправляем) в удаленный репозиторий, также с ключом принудительного перезаписывания.
git push -f origin tag_name
http://doomer.org/blog/programming/how-to-delete-a-remote-git-tag/
- https://rustycrate.ru/%D1%80%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%B0/2016/03/07/contributing.html
- https://komelin.com/ru/articles/chto-delat-esli-ty-nashel-bag-v-proekte-s-github-i-znaesh-kak-ego-ispravit/
git revert <hash>
- отменяет указанный комит, создает новый с отменок указанного.
Смотрим хеш последнего нужного комита git log
Запускаем:
git reset <hash>
- возвращается к указанному комитуgit status
git checkout -- .
(если это нужно)
git rm -r --cached public/mix-manifest.json
git rm -r --cached public/css
echo 'public/mix-manifest.json' >> .gitignore
echo 'public/css/' >> .gitignore
git add .
git commit -m 'fix tracked filed for git'
If you use SSH public key, add repositories
section in your project composer.json
file:
{
"repositories": [
{
"type": "vcs",
"url": "[email protected]:its-dev-first/info/packages/laravel/its-lte.git"
}
]
}
If you known the login/password
to repository, use the following method:
{
"repositories": [
{
"type": "vcs",
"url": "https://gitlab.com/its-dev-first/info/packages/laravel/its-lte.git"
}
]
}
Run from the command line:
composer require fomvasss/laravel-its-lte
Наприклад, маємо наступну файлову структуру:
- www
- laravel-site.test
- app
- composer.json
- vendor
- fomvasss
- laravel-url-aliases
- laravel-lte3
- В проекті в
composer.json
вказати секцію:
Вказати шлях до папки репозиторію:
{
"repositories": [
{
"type": "path",
"url": "../vendor/*",
"options": {
"symlink": true
}
}
],
Або ж вказати шлях до пакету в репозиторії:
{
"repositories": [
{
"type": "path",
"url": "../vendor/fomvasss/laravel-url-aliases",
"options": {
"symlink": true
}
},
{
"type": "path",
"url": "../vendor/fomvasss/laravel-last-visit",
"options": {
"symlink": true
}
}
]
}
- Ставимо пакет (з вітки master):
composer require fomvasss/laravel-lte3:dev-master --prefer-source
Або ж з ін. тега чи вітки (1.x, dev-lang-prefix):
composer require "fomvasss/laravel-lte3":"1.x-dev" --prefer-source
composer require "fomvasss/laravel-lte3":"dev-lang-prefix" --prefer-source
В composer.json на первый уровень добавать секцию:
{
"repositories": [
{
"type": "vcs",
"url": "[email protected]:fomvasss/laravel-taxonomy.git"
},
{
"type": "vcs",
"url": "https://github.com/Tarik02/expression-generator"
}
]
}
Запустить:
composer require fomvasss/laravel-taxonomy
composer require fomvasss/laravel-lte3:1.x-dev
composer require irazasyed/telegram-bot-sdk:dev-develop
php -d memory_limit=-1 /usr/local/bin/composer require fomvasss/laravel-url-aliases:^3.2
-prefer-source: Install packages from source when available. --prefer-dist: Install packages from dist when available. --ignore-platform-reqs: ignore php, hhvm, lib-* and ext-* requirements and force the installation even if the local machine does not fulfill these. See also the platform config option. --dry-run: Simulate the command without actually doing anything. --dev: Install packages listed in require-dev (this is the default behavior). --no-dev: Skip installing packages listed in require-dev. The autoloader generation skips the autoload-dev rules. --no-autoloader: Skips autoloader generation. --no-scripts: Skips execution of scripts defined in composer.json. --no-plugins: Disables plugins. --no-progress: Removes the progress display that can mess with some terminals or scripts which don't handle backspace characters. --optimize-autoloader (-o): Convert PSR-0/4 autoloading to classmap to get a faster autoloader. This is recommended especially for production, but can take a bit of time to run so it is currently not done by default. --lock: Only updates the lock file hash to suppress warning about the lock file being out of date. --with-dependencies: Add also all dependencies of whitelisted packages to the whitelist. --prefer-stable: Prefer stable versions of dependencies. --prefer-lowest: Prefer lowest versions of dependencies. Useful for testing minimal versions of requirements, generally used with --prefer-stable.