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

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

Войти
Регистрация
Восстановить пароль
 
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
#1

SVN на один файл - Программирование Android

17.01.2015, 00:14. Просмотров 346. Ответов 2
Метки нет (Все метки)

Гуру, дайте совет! (или направьте на другую ветку форума - не нашел)

Есть один файл (класс) в нескольких проектах. Его постоянно правят. Причем иногда разные разработчики в разных проектах на разных компах.

1) Можно ли в каждом проекте создать свой SVN репозиторий только для одного файла? Без захвата остальных из этой-же папки?
2) Причем со сравнением перед обновлением, если менялось с двух сторон.
3) И (самое главное) без хранения мусора от SVN в папке проекта!

В идеале bat/cmd-файлом. Поработал, довел до разумно-рабочего состояния - запускаю обновление с сервером...

Про SVN знаю только основы. Общие принципы, даже "для себя" пробовал. Но пока не нужно было. А это уж слишком специфичная задачка... Предстоит менять разные методы из одного класса ("ты отвечаешь за эти методы, а я за эти"), пересечения в одной процедуре не должно быть, но файл один (разделить не получится). По дате синхронизировать тоже не получится - нужен сервер синхронизации! (вдруг время сбилось, откатать на прошлую версию надо, оба меняли - два поменяли - а третьему использовать еще не обьединенное).

Раньше за все изменения в файле отвечал только я и то пришлось свой синхронизатор писать между проектами (на 1С).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2015, 00:14     SVN на один файл
Посмотрите здесь:

Можно ли с помощью SVN использовать один проект двум разработчикам - Программирование Android
Здравствуйте! Подскажите пожалуйста, можно ли с помощью SVN использовать один проект двум разработчикам, если один из них...

Папка build наполняется файлами *.rawtopro и не исключается из коммитов SVN - Программирование Android
С какого-то момента (возможно обновления версии) Android Studio стала генерить кучу непонятных файлов *.rawtopro в проекте в...

[bat] move c:\tmp\.svn c:work\.svn - CMD/BAT
всем привет. почему то он не распознает .svn как валидный путь. как можно из батника переместить папку по имени .svn ?

Файл svn: как его импортировать и что с ним делать - C# ASP.NET
Здравствуйте, достался мне проект на asp.net который необходимо запустить, но в процессе возникли ошибки в коде (http://terraunit.com/)....

Один файл - запихнуть всё в один ексешник - C++ Builder
Здравствуйте,скажите.Вот есть программа,написанная в Билдере 06.В программе используются картинки и звуковые файлы.Есть ли возможность...

Переписать все целые части исходных чисел в один файл, а дробные – в другой файл - C++
Добрый день ,вы могли бы пожалуйста помочь написать программу,на носу сессия,осталось сдать лабораторные только Задание: Выполнить...

Разделить исходный файл на два новых и записать положительные элементы в один файл, а отрицательные - в другой - C++
Есть файл, в котором записаны числа. Программа берёт из этого файла число. Их может быть несколько в одной строке, а может быть одно, а...

читаем один файл->реверс->в новый файл - Assembler
Есть код программы реверс, в котором реверсируется string1 в string2. .model small .stack 100h .data string1 db 256 dup ('$') ...

Как добавить один файл в главный файл - C#
Я пишу консольную программу на C#. В главном файле (имя Program.cs)есть функция Main(string args). В этом файле я caм написал функцию,...

Невозможно загрузить файл или сборку или один из зависимых от них компонентов. Не удается найти указанный файл - Visual Basic .NET
Прошу помощи знающих людей. Есть программа специализированная Mantis Lvision, к ней можно подключать различные dll для вывода отчетов в...

Переписать в новый файл f2 только те символы, которые входят в файл f1 только один раз. - C (СИ)
Пожалуйста, помогите написать программу. Задание: Сформировать файл f1 из 10 символов. Переписать в новый файл f2 только те символы,...

Записать положительные числа в один файл, а отрицательные числа в другой файл. - Turbo Pascal
Дан текстовый файл, в котором числа положительные и отрицательные. Программа должна записать положительные числа в один файл, а...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Форумчанин
Эксперт С++
4511 / 2853 / 227
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
17.01.2015, 10:07     SVN на один файл #2
не совсем понятна задача.
Если файл используется в разных проектах и его нужно поддерживать в актуальном состоянии (в одном проекте файла поменяли, в другом заапдейтили обновления), то создайте на сервере репозиторий для этого файла. Зачекаутить можно куда угодно, только не в корень проекта, т.к. там своя папка .svn будет. Соответственно этот файл нужно будет комитить/апдейтить отдельно от файлов проекта.

Добавлено через 2 минуты
Цитата Сообщение от Tester64 Посмотреть сообщение
3) И (самое главное) без хранения мусора от SVN в папке проекта!
папка .svn все равно будет. Если это принципиально, то можно придумать обходное решение. Например первое, что пришло в голову это зачекаутить этот файл не в папку проекта, а совершенно в другое место. А в самом проекте сделать симлинк на него. Таким образом .svn не будет и с файлом можно будет работать напрямую. Если дело под виндой происходит (там симлинки не поддерживаются), то тогда в самом проекте (хоть в IDE) настроить, чтоб подключался внешний файл.

Добавлено через 1 минуту
Цитата Сообщение от Tester64 Посмотреть сообщение
или направьте на другую ветку форума - не нашел
http://www.cyberforum.ru/version-control/
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
17.01.2015, 12:54  [ТС]     SVN на один файл #3
Цитата Сообщение от Kastaneda Посмотреть сообщение
http://www.cyberforum.ru/version-control/
Не нашел! Спасибо! Искал по словам SVN. Следующие вопросы уже буду задавать там, а пока, может знаете:
Цитата Сообщение от Kastaneda Посмотреть сообщение
папка .svn все равно будет
А это ни как не обойти? Например разделить эту папку и файл. Для каждого проекта сделать внешнюю папку D:\HellowWorld_MyClass\.svn\ а файл положить в папку D:\HelloWorld\src\com\my\myclass.java

Цель - создать целостную папку проекта, которую легко архивировать и SVNить уже с такими-же папками на других компах, а не по файлово. Сейчас у меня каждая успешная версия проходит Ok.bat который 7zip-ит его по дням в две внешних папки. Внутри минимум лишнего, но все в комплекте. Если разнести myclass в другую папку, прийдется захватывать и ее целиком, что не нужно. Да и размер архива будет нереально расти.

Пока вижу решение в том что батник, который должен выравнивать версии:
1) копирует мой класс из моей папки проекта во внешний репозиторий, обновляя то что там лежит
2) проверяет там, выравнивает, дает возможность сравнить построчно
3) копирует файл назад в проект.
Но это уже писать целый комбайн... Может есть встроенное в SVN решение? Пока что я понял из технологии репозиториев лишь самые базовые функции... но раньше слышал что "с бубном" там можно наладить крайне сложные методы синхронизации!

Добавлено через 8 минут
Цитата Сообщение от Kastaneda Посмотреть сообщение
не совсем понятна задача.
Если файл используется в разных проектах и его нужно поддерживать в актуальном состоянии (в одном проекте файла поменяли, в другом заапдейтили обновления), то создайте на сервере репозиторий для этого файла.
Вот здесь "поплыл"! Еще плаваю в терминах. Задача (пока гипотетическая):
1) есть проект, который между несколькими авторами синхронизируется через общий репозиторий на сервере.
2) есть другой проект, класс которого есть и в первом проекте и во втором. Меняется класс в обоих местах, но в обоих проектах должна быть самая свежая версия. Улучшили в первом проекте - закинули во второй, во втором - в первый, в обоих - выравнили сравнением построчно.
3) После обновления файла из другого проекта, репозиторий проекта просто должен обнаружить что файл обновили и отправить в репозиторий сервера, для отправки второму разработчику этого-же проекта всех изменений по проекту.

Добавлено через 6 минут
Проблема (для меня) в том что .svn сильно "раздувается", увеличивая папку проекта на случай быстрого полного архивирования кода. По моим наблюдениям по долго разрабатываемым проектам (чужим), размер папки может быть и в 3-10 раз больше самого кода. На папку проекта в 1.5 Мб находил .svn в 40 Мб!!! Предпочел бы хранить ее вне папки проекта. Возможно в более высоком уровне. HelloWorld\HelloWorld\src... + HelloWorld\.svn + HelloWorld\MyClass1\.svn
При необходимости скинуть полный исходник на флешку кидать лишь HelloWorld\HelloWorld\*.*
Ответ Создать тему
Опции темы

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