Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
Valakin
431 / 97 / 15
Регистрация: 21.02.2015
Сообщений: 731
#1

Git-ом кто нибудь пользуется? Полезная вещь? - Программирование Android

19.06.2015, 16:10. Просмотров 2073. Ответов 71
Метки нет (Все метки)

Смотрел мельком видеоролики, там все через командную строку, есть у кого нибудь опыт работы? можно быстро научится?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2015, 16:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Git-ом кто нибудь пользуется? Полезная вещь? (Программирование Android):

Кто пользуется Parse.com в разработке Android? - Программирование Android
Всем привет! Приложение отправляет данные на Parse.com. Все работает, в таблице добавляется строка с этими данными, строке присваивается...

Кто чем пользуется для разработки приложений под Андроид? - Программирование Android
Всем доброго времени суток! Вопрос немного нубный, но тем не менее... Хотел бы начать разрабатывать ПО под Андройд. Вроде взял...

NDK и С++ кто-нибудь ИЗ ВАС использует? - Программирование Android
Отзовитесь! Хочу услышать мнение о сложностях от тех кто реально использует NDK (c++). Теорию изучаю уже давно - знаю все плюсы и минусы...

Кто нибудь использует/использовал эту либу? - Программирование Android
'com.squareup.okhttp:okhttp:2.6.0' OkHttpClient Пользуетесь ли вы этой библиотекой?

Кто нибудь получил хотя бы символическую плату от гугл плей? - Программирование Android
Не могу сейчас проверить, но раньше на гугл плей разработчик помимо цены и страны на вкладке Россия мог выставить галки на Билайн и...

AWSTATS - кто-нибудь пользуется? - Web
Кто-нибудь ею пользуется? Есть пара вопросов по настройке. http://awstats.sourceforge.net/

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
20.06.2015, 14:33 #16
Цитата Сообщение от Tester64 Посмотреть сообщение
Звучит как рекламма МММ...
МММ предлагал вам вложить все свои деньги и получить баслословную прибыль. Я же предлагаю потратить немного лишь времени на усвоение первых трёх глав Pro Git и научиться им пользоваться.

1. Под сервером вы понимаете центральный репозиторий? Гиту обязательна только личная копия, что хранится в папке .git в корне проекта (по умолчанию, но вообще может быть где-то в другом месте). Все остальные репозитории - опциональны, могут быть или не быть, зависит от ваших целей. Изменения, коммиты, сохраняются в локальной копии, и на выбор в удалённых репозиториях.
2. Потомууууу. Таков ваш процесс при использовании батников. С гитом это - бред. Почему - кодим, закодили что-то, закоммитили эту мелочь, кодим дальше. Накодили что-то большое - слили эту ветку в более глобальную ветку изменений. Каждое изменение коммитится. Вам это может покажется ужасным поначалу, но это огромный плюс. В каждом коммите можно просмотреть что изменилось, можно откатиться назад, попробовать реализовать фичу иначе с нужного места истории. Никаких больше убийств проекта, можно делать абсолютно всё без опаски потерять работоспособность. При этом же, не плодятся никакие мегатонны архивов, всё настолько компактно (для текстовых файлов исходников - основное назначение vcs), что 7z и в подмётки не годится.
3. Затем, что и без команды вам будет работать гораздо проще, быстрее, комфортнее, безопаснее и удобнее. Даже без команды.
4. Да, механизмы поиска другие. Есть средства именно поиска ошибок, а можно тупо переключаться между коммитами в истории и смотреть - тут что-то сломалось или нет. Текущий проект не засорятеся, гит просто переключает рабочий каталог на нужный коммит. Под линуксом очень эффективно, под виндой тоже хорошо.

Цитата Сообщение от Tester64 Посмотреть сообщение
В ЧЕМ????
Повторяю, я тоже делал архивы одной кнопочкой, с простановкой даты и времени, и складыванием в каталог для бекапов. Так что
Цитата Сообщение от Tester64 Посмотреть сообщение
"С++ и ява - полное гав.но по сравнению с Делфи (с) ЗнающийТолькоДелфи"?
не в тему.
Цитата Сообщение от Tester64 Посмотреть сообщение
Скорость?
Скорость. Скорость иная, но огромная. Архивация в принципе не нужна, абсолютно. Параноики могут настроить несколько репозиториев на случай потопа и это никак не скажется на удобстве.
Цитата Сообщение от Tester64 Посмотреть сообщение
Лучше инструменты? Те что находил под Win - это полная гадость - тормозючие, тяжело настраиваемы, громоздкие, некоторые на .Net(потребовало ГИГАБАЙТ на С: для установки), памяти требующие больше чем Андроид студия.
Не в курсе что это за чудо.
Цитата Сообщение от Tester64 Посмотреть сообщение
Встраемые? В последних Делфи (лет 5 назад последний раз там был) начинал встраивать поддержку SVN прямо в редактор с возможностью сравнить текст с "прошлыми жизнями". АнСтудии это грозит?
SVN тогда был отстоем, но вариантов особо не было. Сейчас вроде стало немногим лучше. В андроид студии это уже может бысть встроено, я ей не пользовался. Встраивать куда-то что-то не нужно, это лишняя трата времени, не на встройку, а на использование встроенных костылей.

Цитата Сообщение от Tester64 Посмотреть сообщение
Мусор?
Это не мусор, это нормальная работа репозитория. Архивы во внешей папке - это мусор, они засоряют рабочее место на диске. В гите всё очень компактно. Для сравнения - несколько ГБ из сотен архивов, или все 4000 коммитов проекта "от начала времён" в 39 МБ локального репозитория. Ничто никуда сбрасывать не нужно в принципе. Особое место занимают проекты с субмодулями, но это другая тема.

Цитата Сообщение от Tester64 Посмотреть сообщение
Так все-таки ЧЕМ хорош GIT для "одинокого" программиста (без команды)?
Свободой в работе над кодом, которую он предоставляет.
1
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
20.06.2015, 15:43 #17
Цитата Сообщение от Rius Посмотреть сообщение
Свободой в работе над кодом, которую он предоставляет.
Убедили... пропрбую еще раз!

От батников отказываться не намерен! Особенно убедили тем что можно вывести "мусор" во внешнюю папку. (для меня это критично) Хочу наплодить батники для создания репозитория, сохранения изменений и слива в центр. (пока).
Потом подумаю что нужно для анализа откатов. Архивы у меня хранили посуточные с аккуратной перезаписью (без потерь) и 31 последний поминутный (которые не жалко удалить при нехватке места). Нажать Ok.bat/Commit.bat это одно, а каждый раз набирать в консоли (которую не стоит закрывать тогда) git commit -m "text" - это другое... 20 символов без ошибок вместо Alt+tab(на TotalCommander) + enter (или вообще горячей клавиши).

ИМХО, больше ГИТ полезен для последующего анализа процесса развития проекта. Можно граф простроить... И (когда разберусь) для просмотра процесса изменения каждого файла с простым откатом и учетом одновременных изменений в соседних файлах (изменил код ради которого пришлось еще им поменять количествоо переменных в функции соседнего файла)

Архив - есть архив! Это то что можно отдать заказчику или подарить новичку. Без UNDO до тех моментов за которые мне может быть стыдно!

Цитата Сообщение от Rius Посмотреть сообщение
В андроид студии это уже может бысть встроено, я ей не пользовался. Встраивать куда-то что-то не нужно, это лишняя трата времени, не на встройку, а на использование встроенных костылей.
Пока не находил! Может через плагины и можно сделать комит, но ценность моих архивов была не только в сохранении а в возможности ПОСТРОЧНО сравнением старого и нового файла получить разницу и обнаружить ошибки. А для сравнения нужны ГРАФИЧЕСКИЕ инструменты! Консоль для этого не годится!
В Делфи это БЫЛО встроено! Не полностью, но кроме комитов там были и механизмы ПОСТРОЧНОГО сравнения...
http://www.drbob42.com/gif/examnD3d.png
http://photos1.blogger.com/blogger/5...600/svnide.png
(поленился искать дальше - гугл глючит - но были и построчные отличия - блоки цветные - удалено, добавлено, изменено)

p.s. Как ведет себя ГИТ при нехватке места на диске??? Я несколько раз терял файлы проекта целиком при неправином срабатывании Ctr+S. Неприятно будет потерять все архивы поломкой .git при неудачной попытке записать. Архиватор (МОЙ батник красным светит код ошибки и не закрывается по таймеру)
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
20.06.2015, 15:50 #18
Цитата Сообщение от Tester64 Посмотреть сообщение
но ценность моих архивов была не только в сохранении а в возможности ПОСТРОЧНО сравнением старого и нового файла получить разницу и обнаружить ошибки.
В гите это из коробки. И с таким удобством, что вам и не снилось.
Цитата Сообщение от Tester64 Посмотреть сообщение
Как ведет себя ГИТ при нехватке места на диске???
Если гиту места не хватит, то у вас и винда не загрузится.

Цитата Сообщение от Tester64 Посмотреть сообщение
Особенно убедили тем что можно вывести "мусор" во внешнюю папку. (для меня это критично)
Если вам это так нужно, значит у вас что-то не так.

Если не боитесь порвать шаблоны незнакомым инструментарием, позвоните по skype. Покажу что да как в типичных случаях.
0
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
21.06.2015, 16:30 #19
Цитата Сообщение от Rius Посмотреть сообщение
Если гиту места не хватит, то у вас и винда не загрузится.
Если бы... я успешно работаю в загруженной винде, и вдруг... одна из открытых программ вдруг "сьедает" все свободное место на ОБОИХ винтах. Часто этим грешит хром+ютюб (>50 закладок).

Один раз (недели 2-3 назад) писал внешнюю обработку для 1С и не хватило места на С:. 1С зависла. Обработка полностью заменила прошлый файл и успела записать несколько байт вместо 1000 строк кода...

Раньше для ридми использовал WordPad. Пока не потерял многотысячный файл. Потом написал на Делфи свой редактор с кучей предохранителей (удобный получился - только под винду, но очень шустрый и надежный).

В АнСтудию предохранитель встроен. При <1Mб на С: или Д: выдает предупреждения мешающие работать.

Цитата Сообщение от Rius Посмотреть сообщение
В гите это из коробки. И с таким удобством, что вам и не снилось.
Пока не нашел! Даже среди скриншотов!

Цитата Сообщение от Rius Посмотреть сообщение
Если вам это так нужно, значит у вас что-то не так.
Да вы ксенофоб!

Я НЕ ВЕРЮ GITу! Я готов его выучить и подключить АЛЬТЕРНАТИВНОЙ системой контроля версий минимум на пол года. Я все еще считаю номер версии для программы как сумму ежедневных архивов. Если .git будет большим, то хранить их в архивах считаю не рациональным. Мои архивы ОЧЕНЬ надежны! Проверено годами (больше 10лет система архивов и уже больше 4х лет как перешел на 7z с максимальным сжатием) - предусмотрено все - и невозможность монопольного захвата файлов и нехватка места и сбой архиватора в процессе - "мне сообщат, но ничего не сломают".
Сейчас учу гит по http://git-scm.com/book/ru/v1
Пишу наборы батников на все случаи жизни. До сравнения еще не дошел...

Я не доверю ТОЛЬКО git-у надежность моих исходников, пока не протестирую его на всех возможных "стрессовых" ситуациях... И я не скоро доверю критичные проекты новому и настолько сложному механизму - сначала протестирую на мелких проектах-утилитах.

Я уже выяснил как хранить во внешней папке. Это делается через ключ --git-dir
Bash
1
"%git%" --git-dir="..\repo_test_2_git" init
Цитата Сообщение от Rius Посмотреть сообщение
Если не боитесь порвать шаблоны незнакомым инструментарием, позвоните по skype. Покажу что да как в типичных случаях.
Спасибо за предложение... Может позже... Сначала предпочитаю сам маны "пожевать", запомнить терминологию и базовые команды (а то скажешь что-нибудь вроде "затем amend-иш и тогда...", а буду с умным видом кивать головой), опробовать все, а потом попытаться адаптировать под себя, а уж потом натыкаться на подводные камни и искать к ним решения "на стороне"...
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
21.06.2015, 17:44 #20
Цитата Сообщение от Tester64 Посмотреть сообщение
Если бы...
git не архивирует весь хлам в одну кучу. Он хранит изменённые строки, для текстовых файлов это очень компактно.

Цитата Сообщение от Tester64 Посмотреть сообщение
Пока не нашел!
Пример, не скриншотный. Тыкните любой коммит.

Цитата Сообщение от Tester64 Посмотреть сообщение
больше 10лет система архивов
Сочувствую. Мне пары лет хватило, потом на svn перевёл. Да, может оно у вас и работает. Но с такой же надёжностью можно каждое новое изменение проекта на новый жествий диск переносить и там только править. Это неэффективно и затратно, по времени и ресурсам.
Цитата Сообщение от Tester64 Посмотреть сообщение
Я уже выяснил как хранить во внешней папке.
Цитата Сообщение от Tester64 Посмотреть сообщение
а потом попытаться адаптировать под себя
Ещё раз повторю - это не нужно. Прибить костылями гит к вашему текущему рабочему процессу - ничего хорошего не выйдет, поплюётесь и забросите.

Добавлено через 27 минут
Цитата Сообщение от Tester64 Посмотреть сообщение
Сейчас учу гит по http://git-scm.com/book/ru/v1
Почему не http://git-scm.com/book/ru/v2 ?
0
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
21.06.2015, 18:59 #21
Цитата Сообщение от Rius Посмотреть сообщение
Почему не http://git-scm.com/book/ru/v2 ?
Потому что ступил... Нагуглил первый учебник. Достаточно компактный и простой... Сразу начал учить... Не знал что есть другая версия! Там много отличий (в первых 2х главах)? команды меняли или только расширяли?

Цитата Сообщение от Rius Посмотреть сообщение
Пример, не скриншотный. Тыкните любой коммит.
Это отличия на Гитхабе, а не локальные...

Цитата Сообщение от Rius Посмотреть сообщение
Сочувствую. Мне пары лет хватило, потом на svn перевёл. Да, может оно у вас и работает. Но с такой же надёжностью можно каждое новое изменение проекта на новый жествий диск переносить и там только править. Это неэффективно и затратно, по времени и ресурсам.
Не особо затратно... Архивация идет быстро - 10-30 секунд. Архивы не больше 10 мб (максимум 50 - забыл чужие архивы примеров из папки выкинуть). Не построчные, а полные. Если картинку или встроенную базу поменяю она тоже сохранится. Не надо играться с игнорами. Надежность 100%.

У меня есть сложный проект. Клиентам отдал 142ю версию год назад.
Сейчас "пилю" следующий релиз. Еще сырой. Уже 208я версия.
У клиента МЕЛКИЕ глюки.
Я нахожу его архив №142, распаковываю в ОТДЕЛЬНУЮ папку и... буд-то вернулся в прошлое. Весь проект в отдельной папке. Со всеми "лишними" файлами. Включая даже *.java~ или *.tmp. Я могу скомпилировать эту версию. И бинарники заменят старые в этой-же папке. Я могу подправить мелочь и отдать клиенту и держать ее распакованной на всякий случай. И при этом продолжать работать с версией 208 в старой рабочей папке.
Еще могу архив распаковать на другом компьютере, а не восстанавливать старую сборку из некого сетевого гит-сервера.

В гите есть куча вещей, которые меня РАЗДРАЖАЮТ! Я не линуксоид и меня бесят vi-подобные редакторы!!!!
Как выбраться из команды %git% diff --cached??? Открылся цветной (мутно-темно-зеленый) редактор не знающий ни одной виндовой коомбинации клавиш и не показывающий подсказок! (пока плююсь и нагло закрываю консоль - хорошо что вызывал из батника с паузой, а не набирал кучу путей в консоли ручками)

Когда мне нужно найти разницу между старой и новой версией я открываю в Тотале с одной стороны файл оригинал, а с другой распакованный из архива. И нажимаю Файл-Сравнить по содержимому. И получаю такое:
http://yaponomat.com/linux/total-com...9%D0%BB%D0%B0/
Благодаря тонкой настройке я могу даже учесть перенос текста в другое место без изменений.
Прелесть еще в том что я могу прямо в этих редакторах МЕНЯТЬ текст. Выравнивая новое под старое и исправляя мелкие обнаруженные ошибки.
Есть и более гибкие инструменты сравнения файлов. Как я могу доверить это гиту???
Понимаю что так компактнее хранить отличия. Понимаю что можно грубо найти что менялось за 2 месяца. Понимаю что могу просмотреть историю файла на любую дату (хотя еще не понял как). Но инструменты сравнения файлов не должны быть консольными!!! Или вебовскими, лежащими на опенсорс ресурсах... Иногда я тестирую свои программы отключившись от сети (обработка ситуаций "нет связи"), а иногда может быть поломка у провайдера и я могу до суток не получить доступа к своему гит-серверу.

Цитата Сообщение от Rius Посмотреть сообщение
Ещё раз повторю - это не нужно. Прибить костылями гит к вашему текущему рабочему процессу - ничего хорошего не выйдет, поплюётесь и забросите.
А как иначе? Сразу рисковать рабочим проектом? Я готовлю инструментальную базу адаптированную под себя и проекты моего типа. У меня например есть жесткая структура папков в моих андроид проектах. Пока создал папку с батникам и накидал туда CPP/H/JPG/TXT/RTF файлы и учусь с ними работать как с проектом. Пока оставил .git внутри (команды проще - соответсвуют учебнику). Позднее думаю вывести во внешнюю папку. У внутренних обнаружил еще один "бонус" - у меня стоит Tortuis и похоже он проставил свои иконки к файлам проекта лишь обнаружив в папке .git. В Total'e это смотрится ярко, но пока бесполезно...

Можно ли заменить Vi хотя-бы на Notepad++???
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
21.06.2015, 19:05 #22
Цитата Сообщение от Tester64 Посмотреть сообщение
Это отличия на Гитхабе, а не локальные...
Они везде одинаковые. Интерфейс просмотра, подсветка зависит от программы просмотра, естественно. Но сами диффы одинаковы.

Цитата Сообщение от Tester64 Посмотреть сообщение
Не особо затратно... Архивация идет быстро - 10-30 секунд. Архивы не больше 10 мб (максимум 50 - забыл чужие архивы примеров из папки выкинуть). Не построчные, а полные. Если картинку или встроенную базу поменяю она тоже сохранится. Не надо играться с игнорами. Надежность 100%.
Вы не понимаете. Архивации - нет. Времени - на написание комментария о том, что было изменено в коммите. Прирост объёма репозитория от коммита, в сравнении с вашими архивами, равен нулю.
Цитата Сообщение от Tester64 Посмотреть сообщение
Я нахожу его архив №142, распаковываю в ОТДЕЛЬНУЮ папку и... буд-то вернулся в прошлое. Весь проект в отдельной папке. Со всеми "лишними" файлами. Включая даже *.java~ или *.tmp. Я могу скомпилировать эту версию. И бинарники заменят старые в этой-же папке. Я могу подправить мелочь и отдать клиенту и держать ее распакованной на всякий случай. И при этом продолжать работать с версией 208 в старой рабочей папке.
Еще могу архив распаковать на другом компьютере, а не восстанавливать старую сборку из некого сетевого гит-сервера.
нет необходимости в сервере. Восстановить также можно на любой момент, и просмотреть можно любой момент без ковыряния сотен архивов.

Цитата Сообщение от Tester64 Посмотреть сообщение
А как иначе?
Бессмысленный разговор. Заходите в скайп, мой логин riuson. Здесь всё это обсуждать - получится объём топика больше Про Гита , только с нулевым смыслом.
Все ваши проблемы, которые по вашему мнению вы успешно решаете, в гите давно решены более эффективно.
Я пользуюсь Notepad++ в винде, и nano в линуксе.
1
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
23.06.2015, 13:23 #23
Беру назад все плохие слова про ГИТ что говорил!
Мощнейший иструмент...
Но новичку в него вьехать ОЧЕНЬ тяжело! Даже по самым простым хелпам... Мозги выворачивает...
Помогло http://tutorials.assembla.com/git-gu...s/tour.ru.html
Инструменты - ЖУТКИЕ! Продуманость дизайна и логики ниже плинтуса.
Хелпы не понятны пока не придумаешь возможное применение для каждой описанной возможности.
Консольные программы требуют набирать сотни символов для мелких оперций.
Графические программы требуют для логически одного действия (отправить все что я наваял на гит-хаб) нажатия десятка кнопок и ввода ника-пароля.
После долгих тацев с бубном получил десяток-полтора баников для большинства базовых операций.

Теперь буду долго тестировать их долго и нудно придумывая очередные "извращения" с кодом...

Я для себя нашел такие применения:
1) Можно ЛЕКГО (слегка проверил) вести несколько версий для одного проекта ОДНОВРЕМЕННО! Например релиз/дебюг/альфа. Причем делая новый релиз (у меня в одном проекте уже год прошел) можно подправлять мелкие ошибки в прошлом релизе. А потом обьединять, внося мелкие изменения из прошлого релиза в новый. Я для себя решил что буду хранить 3 папки с разными версиями одной программы (альфа/бетта/релиз) и научился синхронизировать их между собой.
2) После диких извращений сделал батник, который одной кнопкой отправляет все мои художества на гитхаб, битбакет и в локальные репозитории сразу. Типа резервное хранилище + "забирайте кто хочет то что я написал - вдруг пригодится".
Подозреваю что при работе в команде GIT просто незаменим, но для одиночки-новичка пока других задач не придумал!

Минусом считаю (но не считают авторы программы) то что в архивы не попадают бинарники. Иногда чтобы перекомпилировать что что собирал год-два назад надо искать устаревшие инструменты - компилятор давно потерял совместимость и редактор уже давно в юникоде, а не в анси. Но теоретически и это решается - можно отключить фильтры...
Еще не самое приятное/привычное - обязательное наличие .git в папке проекта.
Бонусом (довольно приятным) вижу пометку иконок файлов значками состояний синхронизации при установке "черепашки" (TortouisGIT... как-то так звучит) - он тесно встраивается в Ехплорер и подркрашивает значки даже в Тотале... Сразу видно какие файлы сегодня менял и еще не отправил...

Короче... Инструмент ОЧЕНЬ мощный. Я бдю над ним (и только) уже 3тьи сутки и только научился пользоваться базовым возможностям. (даже "ветки" еще не учился обьединять) Инструмент НЕ удобный для новичка - нужно его адаптировать под себя... Инструкции крайне кривые и мудреные. Перепробовал почти все (одну еще не успел) графические БЕСПЛАТНЫЕ инструменты - без приличной знания теории они бесполезны и лишь путают новыми терминами. Если попросите могу выслать/выложить свои наработки(батники), хотя понимаю что они помогут освоиться лишь новичку - когда "подрасту(морально/разовьюсь)" явно половина из этих инструментов будет не нужной и слишком грубой для полноценной работы. Но для новичка... поможет начать понимать и не матюкаться на каждом шагу...

p.s. Отдельное спасибо Rius за помощь в первых шагах...
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
23.06.2015, 13:32 #24
Цитата Сообщение от Tester64 Посмотреть сообщение
Графические программы требуют для логически одного действия (отправить все что я наваял на гит-хаб) нажатия десятка кнопок и ввода ника-пароля.
В AndroidStudio вообще из коробки есть такой функционал, нужно нажать всего 1 кнопку, ввести комментарий и нажать еще одну кнопку)
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
23.06.2015, 13:42 #25
Tester64, обращайтесь )

Да, инструмент мощнейший. На нём ведут разработку таких огромных проектов, как linux kernel и Qt.
Инструменты продуманны для своей области применения. Логика там есть, но это не логика пользователей Windows.
Отличный хэлп для знакомства - Pro Git.
Самые частые консольные команды:
Bash
1
2
git comm<TAB><ENTER>
git add -p<ENTER>
Графические программы, как и консоль, надо настроить, тогда отправка будет производиться одной кнопкой. Дело в авторизации.

1) Переключение между ветками в каталоге достаточно быстрое, чтобы не держать 3 папки одновременно.
2)
Bash
1
git push имя_репозитория имя_ветки
Причём под одним именем репозитория может скрывать несколько реальных репозиториев одновременно, т.е. отправка в них все производится одной встроенной командой.
3) Система контроля версий исходных файлов не предназначена для бинарников. Т.е. хранить она их может, но нет нормальных diff'ов, поэтому репозиторий успешно раздувается при обновлении бинарных файлов. Можно в отдельную ветку, основанную на нужном коммите, добавить эти бинарники и забыть про них, пусть хранятся. То же, что и ваши архивы. Главное не сливать ветку с бинарниками в основные, чтобы не мусорить.
4) Наличие .git в проекте не обязательно, но удобно. Открываем git bash в папке проекта, и консольные команды сразу же работают, без указания --git-dir.
5) Новички не делают резервных копий. Потом начинают делать архивы. После переходят на системы контроля версий.

Привыкайте к схеме от Vincent Driessen. Это не 100% истина, но удобно, в первозданном виде или подстроенном под себя.
0
Вложения
Тип файла: pdf Git-branching-model.pdf (3.89 Мб, 6 просмотров)
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
23.06.2015, 14:46 #26
Цитата Сообщение от Spelcrawler Посмотреть сообщение
В AndroidStudio вообще из коробки есть такой функционал, нужно нажать всего 1 кнопку, ввести комментарий и нажать еще одну кнопку)
В студии еще не искал, но сомневаюсь что на гитхаб можно отправить одной кнопкой...

Bash
1
2
3
git comm<TAB><ENTER>
git add -p<ENTER>
git push имя_репозитория имя_ветки
Я Вас наверное удивлю, но это для меня слишком Долго!
Коментарий вставляется автоматически - дата+время. Позднее сделаю ввод диалогом.
Вся упаковка (я пользуюсь git add -A) происходит одним батником вместе с коментарием.
Вся отправка на ВСЕ репозитории (до 7 в настройках) тоже одним батником.
Есть еще один батник на двусторонний обмен (не тестировал)
Есть батник на создание нового репозитория с простановкой больше десятка полезных параметров
батник на вызов GUI (проще чем через контекстное меню)
Несколько батников - информеров...

Я уже Вам говорил - 3 папки = 3 ОДНОВРЕМЕННО открытых редактора на все 3 версии! Не надо перезапускать редактор (Ан-Студия грузится больше минуты на сложных проектах - пока переиндексирует все...)

И я еще даже не пытался понять методики обьединения версий/веток...
Цитата Сообщение от Rius Посмотреть сообщение
5) Новички не делают резервных копий. Потом начинают делать архивы. После переходят на системы контроля версий.
Как там говорят... Админы делятся на тех кто делает резервные копии и тех кто будет делать резервные копии!
Тяжело довериться репозиторию! По крайней мере в ближайшие пол года я буду и архивы делать и коммиты. Умом я понимаю что такое комиты, но... я не могу их "пощупать"!!! В архивах я всегда на 101% уверен! В них даже % на случай частичного сбоя сделан. +В случае крушения винта, хоть часть архивов но смогу спасти. Или из 3х архивов слеплю один... А базы в .git - это мрак! кроме встроенных команд (которые можно убить даже вирусом) я ничем до своих исходников добраться не смогу. Тяжело вдруг доверить многолетние исходники такой не проверенной (мной) программе...
По поводу "нехватки места" еще не проверял... Сказано что в базу идет только ЗАПИСЬ. Даже удаления не делаются. Но... базы иногда нужно "чистить", реиндексировать, упаковывать, искать битые перекрестки... И в базах есть понятие транзакций - сломался на 5й команде из 20 - ни одна не запишется. А если успешно сохранит пол изменения и забудет на чем остановился - будет неприятно (причем даже не знаю чем это грозит)

Графические программы плохо подстраиваются (цвета + шрифты не в счет). Некоторые тормозят нереально (родная гитхабовская - белое поле с рисунками вместо кнопок(дизайн ака новый скайп) - с многослойной анимациями на кнопках). Даже не нешел в 3х (дальше плюнул) прогах как комитить без ОБЯЗАТЕЛЬНОГО ввода комментария в отдельном поле на которую еще мышкой вставать надо (а если мне нечего туда писать - "мелочи ни на что не влияющие кроме дизайна кода - убрал лишние пробелы, подровнял код, сделал переносы в длинных коментариях").

it push имя_репозитория имя_ветки
Вместо этого нашел (вроде работает) push --all

Причём под одним именем репозитория может скрывать несколько реальных репозиториев одновременно, т.е. отправка в них все производится одной встроенной командой.
А как? push --all сразу отправляет на все репозитории, но как отправить сразу на 3 из 7ми возможных? Их можно групировать?
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
23.06.2015, 14:48 #27
Цитата Сообщение от Tester64 Посмотреть сообщение
В студии еще не искал, но сомневаюсь что на гитхаб можно отправить одной кнопкой...
Можно.
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
23.06.2015, 15:22 #28
Цитата Сообщение от Tester64 Посмотреть сообщение
Коментарий вставляется автоматически - дата+время.
Дата/время и так пишутся в коммите, как и автор. Главное комментарий - что было изменено и зачем. Именно это потом быстро смотрится в дереве истории.

Цитата Сообщение от Tester64 Посмотреть сообщение
Тяжело довериться репозиторию!
Репозиториев может быть несколько. И локальных, и удалённых. Бэкап это не бэкап, если он весь хранится в одном месте. Упал один репозиторий - восстановили из другого. Базы не в .git, а в репозиториях, в которые делается push. К возможности потери локальной копии надо быть готовым, локальные файлы всегда могут навернуться неожиданно, а несколько удалённых копий - маловероятно.
Цитата Сообщение от Tester64 Посмотреть сообщение
как комитить без ОБЯЗАТЕЛЬНОГО ввода комментария
Комментарий обязателен, примите как факт )
Цитата Сообщение от Tester64 Посмотреть сообщение
push --all
это пока веток мало и все публичные.
Цитата Сообщение от Tester64 Посмотреть сообщение
А как?
В .git/config в одном remote прописываете два адреса
Bash
1
2
3
[remote "all"]
    url=ssh://user@server/repos/g0.git
    url=ssh://user1@server1/repos/g1.git
1
Valakin
431 / 97 / 15
Регистрация: 21.02.2015
Сообщений: 731
23.06.2015, 15:24  [ТС] #29
гитхаб в основном нужен для команды разработчиков? (если я один пишу не нужен?)
0
Rius
Эксперт .NET
2572 / 1768 / 402
Регистрация: 25.05.2015
Сообщений: 5,879
Записей в блоге: 8
Завершенные тесты: 4
23.06.2015, 15:30 #30
Я пишу один и пользуюсь гитхабом. Вам решать.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2015, 15:30
Привет! Вот еще темы с ответами:

chdir, кто-нибудь этим пользуется? - Perl
chdir кто-нибудь пользуется? Очень хочется щагнуть из cgi-bin в www. Каковы перспективы? P.S. По всему нету одни и те...

Кто нибудь пользуется: безопасным извличением устройства? - Носители информации
Кто что думает и почему!

Пользуется ли кто-нибудь Windows 8 Developer Preview на самом деле? - Windows 8, 8.1
Хотя миллионы пользователей скачали предварительную сборку Windows 8 для разработчиков, лишь немногие ее на самом деле используют. Об этом...

Jquery.listen это полезная вещь или заплатка? - jQuery
Методом .on() не получается задать события для элементов, которые появляются при помощи Ajax загрузки, а при помощи Jquery.listen всё...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.06.2015, 15:30
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru