Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
Valakin
431 / 97 / 15
Регистрация: 21.02.2015
Сообщений: 736
#1

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

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

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

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

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

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

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

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

AWSTATS - кто-нибудь пользуется?
Кто-нибудь ею пользуется? Есть пара вопросов по настройке....

71
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
24.06.2015, 11:04 #41
Цитата Сообщение от Rius Посмотреть сообщение
Автору достаточно посмотреть на комментарий, чтобы понять что там было сделано.
Я и так знаю что и когда я в коде делал...

Например...
Эту неделю переделывал протоколы синхронизаии программы с сервером (php). Заняло где-то 3 дня. Тысячи мелких не существенных "подпилов", упрощений, выносов в более логичные функции. Добавил несколько десятков новых полей и детально задокументировал их в коментариях кода. Больше 30 часов. Иногда за час перепрыгивал с одной процедуры на полностью не важную чтобы отдохнуть. С главной процедуры хранения результата в базе на читабельность логов. С кода архивации на дизайн отладочной утилиты (шрифты, цвета, читабельность ошибок). Иногда перепрыгивал с php на андроид для тестирования результата. Иногда подправлял мелочь в андроиде. Результат... Старый протокол "подвинул" в сторону без потери поддержки и положил рядом новый как основной... Больше 30 файлов подправил. Если "отматывать" прийдется, то учет идет по минутам времени работы, а не по "сделанным операциям" (ведь их тысячи).

А чего стоило написать батники для гит-синхронизации...
Я над ними больше суток работал! Тесты, подгонка цветов, проверка активности на гитхабе/битбакете/в соседней папке. Один раз даже перепрыгнул в С++ чтобы утилитку подправить (целых 10 минут убил). Перепрыгивал с одного батника на другой. Особенно когда вынес все настройки проекта в один файл и его "унифицировал" за одно подправляя все связанные батники...

Добавлено через 2 минуты
Цитата Сообщение от Rius Посмотреть сообщение
Так в файле .gitignore есть обратная операция, только включение указанных путей.
http://git-scm.com/docs/gitignore
Это если воспользоваться "!" перед папкой? я не встречал раньше в примерах...
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 11:39 #42
Цитата Сообщение от Tester64 Посмотреть сообщение
Я и так знаю что и когда я в коде делал...
Возьмите к примеру архив, какой-нибудь там project-2008-01-01-15-34-01.zip и скажите, не распаковывая его, что там было изменено?
Цитата Сообщение от Tester64 Посмотреть сообщение
Если "отматывать" прийдется, то учет идет по минутам времени работы, а не по "сделанным операциям" (ведь их тысячи).
Учёт идёт по выполненным кусочкам работы, а не по времени или файлам.
Цитата Сообщение от Tester64 Посмотреть сообщение
А чего стоило написать батники для гит-синхронизации...
Если перейдёте на *.sh скрипты, ваше кунг-фу станет ещё сильнее. sh в msys тоже работают.

Да, вот пример :
Код
*.*
!*.c
!*.cpp
!*.h
!*.ini
!*.uvproj
!.gitignore
!*.txt
/Debug
Добавлено через 17 минут
Цитата Сообщение от Tester64 Посмотреть сообщение
Эту неделю переделывал протоколы синхронизаии программы с сервером (php). Заняло где-то 3 дня. Тысячи мелких не существенных "подпилов", упрощений, выносов в более логичные функции. Добавил несколько десятков новых полей и детально задокументировал их в коментариях кода. Больше 30 часов. Иногда за час перепрыгивал с одной процедуры на полностью не важную чтобы отдохнуть. С главной процедуры хранения результата в базе на читабельность логов. С кода архивации на дизайн отладочной утилиты (шрифты, цвета, читабельность ошибок). Иногда перепрыгивал с php на андроид для тестирования результата. Иногда подправлял мелочь в андроиде. Результат... Старый протокол "подвинул" в сторону без потери поддержки и положил рядом новый как основной... Больше 30 файлов подправил. Если "отматывать" прийдется, то учет идет по минутам времени работы, а не по "сделанным операциям" (ведь их тысячи).
Целая неделя или 3 дня в одном коммите - ужас.
Делаем отдельную ветку для новых полей с документацией под них. Прави в ветке.
Надоело - делаем ветку под читабельность лога, переключаемся в неё и правим код.
Делаем ветку под архивацию, под дизайн. К чему изменение относится, в той ветке и правим. Когда изменение полностью завершено, сливаем ветку в главную, develop.
Перепрыгивать легко, упорядочивать легко, разбираться в результатах работы - намного легче, чем в подправленных за 3 дня файлах, упакованных в одну кучу с комментом "изменение от 2015-06-24".
1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
24.06.2015, 13:07 #43
Юзай tortoisegit https://code.google.com/p/tortoisegit/ и не парь себе мозги этой консолью
1
Pablito
2652 / 2134 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
24.06.2015, 13:39 #44
я это еще на первой странице сказал, и дал ссылку на tortoise (которая кстати интегрируется в виндовый эксплорер и доступна через контекстное меню на любой папке или файле)

командная строка - атавизм, я сам олдфаг и могу спокойно работать в командной строке, но использовать ее для работы с git-ом при наличии таких удобных утилит - глупость
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 14:08 #45
Если вам нравится елозить мышкой и целиться в мелкие контролы в окошках, то, конечно, удобные утилиты. Если, к тому же, вы вечно обречены сидеть только под Windows.
0
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
24.06.2015, 14:12 #46
Цитата Сообщение от Rius Посмотреть сообщение
Если вам нравится елозить мышкой и целиться в мелкие контролы в окошках, то, конечно, удобные утилиты. Если, к тому же, вы вечно обречены сидеть только под Windows.
ваше личное мнение)
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 14:15 #47
Цитата Сообщение от dajver Посмотреть сообщение
ваше личное мнение)
вы можете залогиниться по ssh на веб-сервер и запустить там виндовый tortoisegit?
0
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
24.06.2015, 14:17 #48
Цитата Сообщение от Rius Посмотреть сообщение
вы можете залогиниться по ssh на веб-сервер и запустить там виндовый tortoisegit?
Мне это не нужно) Я максимум что делаю это коммиты отправляю на гит, что бы другие кодеры могли спуллить мой коммит и работать дальше с моим кодом. Иногда делаю бранчи, опять же все довольно тривиально, и не надо писать кучу непонятных символов что бы это сделать, пару кликов мышки по нужным пунктам меню и готово.
0
Pablito
2652 / 2134 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
24.06.2015, 14:17 #49
Цитата Сообщение от Rius Посмотреть сообщение
залогиниться по ssh на веб-сервер
это частный случай, очень и очень частный
1
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 14:21 #50
Цитата Сообщение от Паблито Посмотреть сообщение
это частный случай, очень и очень частный
Разработка ПО под линуксами тоже частный случай? Автоматизация, которую наворотил Tester64, - тоже?

Цитата Сообщение от dajver Посмотреть сообщение
Мне это не нужно)
Тогда к своим выводам про глупости тоже припишите "imho"
Вам немного больше пары кликов, можете посчитать.
0
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
24.06.2015, 14:24 #51
Цитата Сообщение от Rius Посмотреть сообщение
Тогда к своим выводам про глупости тоже припишите "imho"
Что то я не припомню что бы я писал что то про глупости) Я писал о том что проще, а не то что использовать консоль это глупо.
0
Pablito
2652 / 2134 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
24.06.2015, 14:25 #52
Цитата Сообщение от Rius Посмотреть сообщение
Разработка ПО под линуксами тоже частный случай? Автоматизация, которую наворотил Tester64, - тоже?
Я имел ввиду не разработку под линукс, а ssh и веб-сервер. И неужто под линкус нет нормальной оболочки что бы без командной строки обойтись?

Что писал Tester64 я не читал, там всегда много букв и специфические условия, которые обычному человеку чуть более чем нафиг не нужны.
1
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,072
24.06.2015, 18:28 #53
Ну поставил я Git и TortoiseGit, дальше что?
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 20:53 #54
Цитата Сообщение от Паблито Посмотреть сообщение
Я имел ввиду не разработку под линукс, а ssh и веб-сервер. И неужто под линкус нет нормальной оболочки что бы без командной строки обойтись?
Ok, я привёл другие, более распространённые случаи.
Если вы подразумеваете "нет ли под линукс оболочки, аналогичной созданной под винду?", то нет. Я не считаю это, вызываемое через дебри мышиного меню, нормальным.
Попробовал подсчитать число кликов мыши, чтобы закоммитить изменения, и завис. Не нашёл способа в этом интуитивно понятном интерфейсе добавить chunk в stage. Кто-нибудь значет этот способ? Или только по целым файлам добавляется?
В консоли это:
Bash
1
2
3
4
git add -p<ENTER>
yynynnnynnnyny.. # выбор чанков
git comm<TAB><ENTER>
# тут вызывается nano/notepad, при закрытии которого всё и коммитится
Список команд, которые достаточно запомнить для повседневной работы, очень небольшой:
Bash
1
2
3
4
5
6
7
8
git add
git rm
git status
git commit
git pull
git push
git checkout
git merge
http://aaronmbushnell.com/git-moving-from-gui-to-command-line/
И работают они в любом гите, под любой ос. В локальном терминале и по ssh.
1
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,732
24.06.2015, 21:46 #55
Rius, для меня окончательным выбором GUI стали даже не команды, которые я вовсе не хочу набирать из соображений безопасности. Для меня окончательным выбором GUI стала возможность просмотра изменений и самих файлов в любом коммите. Ну и, соответственно, выбор галочками конкретных файлов перед коммитом. А также просмотр изменений перед коммитом.
CLI-интерфейс - это позапрошлый век. Это утопия и анахронизм. Да, я знаком со многими, кто пользуется командной строкой и Линуксом, но не считаю это правильным. Зато вижу, как за последние -дцать лет Линукс переместился из чисто текстового режима (начиная от сбора ядра) в GUI даже при установке программ (теперь там свой маркет или как там его). Это всё прогресс. Когда-то и Линукс будет похож на Винду, мне кажется.
CLI - это лишь альтернатива, но не основное средство для работы. Я помню Plus для работы с Oracle, мы тоже писали там команды руками. Только это мало кому нужно, у всех давно есть нормальные среды для создания таблиц и запросов, анализаторы планов и т.д.
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
24.06.2015, 21:50 #56
CoolMind, основным был и остаётся, до сих пор, консольный режим git. Такова его основная утилита и универсальность. Все надстройки остаются надстройками над консолью для удобства. Вы наверняка видели, какое множество опций есть у этих команд, и все их не реализовать в GUI, не захламив его.
1
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
25.06.2015, 06:46 #57
Цитата Сообщение от Rius Посмотреть сообщение
Попробовал подсчитать число кликов мыши, чтобы закоммитить изменения, и завис.
Одно гуи отличается от другого... Находил вполне приличные для комита. (я их за эту неделю уже не меньше 8 перепробовал). Поэтому и пишу батники. По сути это решения на большинство случаев жизни. В идеале будет написан свой набор инструментов "под себя".

В линукс не перейду пока туда не портируют ТоталКоммандер или не напишут ПРИЛИЧНЫЙ аналог. У меня пол жизни в компе на коомбинациях клкавиш висит... (последнее время ВСЕГДА запускаю от 2х до 5ти копий тотала - до 10 одновременно открытых папок).

Как и архивировать предпочитаю в один батник Ok.bat или в Alt+F5 в тотале, а не прописывая каждый раз строку 7z на больше чем 200 символов (со всеми ключами, которые надо помнить и длинными путями).

Добавлено через 5 часов 31 минуту
Цитата Сообщение от Rius Посмотреть сообщение
основным был и остаётся, до сих пор, консольный режим git. Такова его основная утилита и универсальность. Все надстройки остаются надстройками над консолью для удобства. Вы наверняка видели, какое множество опций есть у этих команд, и все их не реализовать в GUI, не захламив его.
Пока сильно матюкаюсь... Далеко не все можно!!! Может в линуксовом больше, но не под виндой!

1) Как вывести в консоль ТОЛЬКО те файлы, что система пытается добавить(ИЛИ (а не И) изменить/ ИЛИ удалить/ИЛИ игнорировать)? Без лишнего мусора вроде подсказок? вроде
Bash
1
2
Ignored files:
  (use "git add -f <file>..." to include in what will be committed)
2) Как вывести те что игнорируются, но только в пределах определенной папки? (для отладки фильтров в гигантских проектах)

До сих пор не могу по человечески фильтры настроить...
Bash
1
2
3
*.*
!*.cpp
!*.h
Этот не всегда срабатывает!!!
Подхватывает и все файлы без расширения
Например: "makefile", "readme", "папка для мусора"...
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
25.06.2015, 06:52 #58
1)
Bash
1
git status -s --porcelain
?
http://git-scm.com/docs/git-status
2)
Если игнорится, то игнорится.
Для файлов без расширений, для всех файлов - *
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
25.06.2015, 07:36 #59
Цитата Сообщение от Rius Посмотреть сообщение
git status -s --porcelain
Это показывает ВСЕ отличия списком... И измененные и добавленые... Фильтры не установить. Например когда изменений десятки хочется увидеть только новые. Или только измененные. Или новые, но только из определенной папки... В линуксе вроде можно "удлинять" команду - результат выводить в другую команду, которая чуть-ли не регуляркой обрабатывает и выводит только нужное, но в ДОСе это сделать на порядки сложнее. А как подобное вывести одной командой не нашел...

Цитата Сообщение от Rius Посмотреть сообщение
Для файлов без расширений, для всех файлов - *
Пробовал уже... кучу коомбинаций перебрал!
Надо: Во всех папках и в корне проекта увидеть ТОЛЬКО *.cpp!
А оно либо все прячет, либо все показывает, либо показывает заодно с *.cpp еще и те что без разрешений...
0
Rius
Эксперт .NET
4565 / 2879 / 705
Регистрация: 25.05.2015
Сообщений: 8,893
Записей в блоге: 10
Завершенные тесты: 4
25.06.2015, 07:46 #60
1)
Цитата Сообщение от Tester64 Посмотреть сообщение
но в ДОСе это сделать на порядки сложнее
Я же говорю, освойте sh скрипты и ваше кунг-фу станет сильнее. Раз уж установлен msysgit, у вас есть и MSYS.

2) Не понимаю смысла выводить куда-то файлы, которые вы явно указали игнорить.
Есть ещё такая команда: http://git-scm.com/docs/git-ls-files
1
25.06.2015, 07:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.06.2015, 07:46
Привет! Вот еще темы с решениями:

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

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

i2c сниффер bus pirate - пользуется кто-нибудь?
пытаюсь работать с eeprom через bus pyrote. читаю, пишу нормально. весьма...

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


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Опции темы

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