Как “не присвоить версию” файлу в любом svn и/или мерзавец

def get_max_profit(stock):
    p=stock[0]
    max_profit=0
    maxp=p
    minp=p
    for i in range(1,len(stock)):
        p=min(p,stock[i])
        profit=stock[i]-p
        if profit>max_profit:
            maxp=stock[i]
            minp=p
            max_profit=profit
    return minp,maxp,max_profit



stock_prices = [310,315,275,295,260,270,290,230,255,250]
print(get_max_profit(stock_prices))

Эта программа в python3 может вернуть покупательную цену и отпускную цену, которая максимизирует прибыль, рассчитывается с учетом сложности времени O (n) и сложности пространства O (1).

68
задан Community 23 May 2017 в 11:54
поделиться

12 ответов

SVN версии 1.5 поддерживает удаление / удаление файла из репозитория без потери локального файла

, взятого из http://subversion.tigris.org/svn_1.5_releasenotes. html

Новая опция --keep-local сохраняет путь после удаления ..

Delete (remove) теперь использует параметр --keep-local для локального сохранения своих целей, поэтому пути не будут удалены, даже если они не были изменены.

34
ответ дан 24 November 2019 в 14:15
поделиться

я там f я принимаю решение никогда не фиксировать файл, у меня всегда есть "грязный" контроль - я недоволен.

Относительно этой конкретной точки, Вы могли бы хотеть к .gitignore, файл как другой предложил, или использовать схему как та, описанная в этот ответ мой.

0
ответ дан Community 24 November 2019 в 14:15
поделиться

Можно исключить файлы из подрывной деятельности с глобальным - игнорируют установку
http://svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.2
, проверяют документацию для деталей

0
ответ дан paan 24 November 2019 в 14:15
поделиться

Насколько я знаю, что нет никакого простого способа удалить добавленный файл из управления версиями в svn, как только это фиксируется.

необходимо будет сохранить файл где-то в другом месте и удалить его из управления версиями. Чем копия резервное копирование назад снова.

Это - система управления версиями после всех...;)

0
ответ дан FantaMango77 24 November 2019 в 14:15
поделиться

Для SVN можно вернуться файлы, которые Вы еще не фиксировали. В TortoiseSVN Вы просто щелкаете правой кнопкой по файлу в окне фиксации и выбираете Revert...

На svn использования командной строки возвращаются [файл]

, не знают о МЕРЗАВЦЕ, так как я никогда не использовал его.

1
ответ дан Magnus Westin 24 November 2019 в 14:15
поделиться

Для удаления файла полностью из репозитория мерзавца (Говорят, Вы фиксировали файл с паролем в нем, или случайно фиксировали временные файлы)

git filter-branch --index-filter 'git update-index --remove filename' HEAD

Тогда, я думаю, что необходимо фиксировать и продвинуть-f, если это находится в удаленных ответвлениях (помните, что людей могло бы раздражать, если Вы начинаете изменять историю репозитория.. и если они вытянули от Вас прежде, у них мог бы все еще быть файл)

3
ответ дан dbr 24 November 2019 в 14:15
поделиться

Ищите svn:ignore и .gitignore - эти функции позволяют Вам иметь дополнительные файлы в своем контроле, которые проигнорированы Вашим RCS (при выполнении операции "состояния" или безотносительно).

Для определенных для машины файлов конфигурации, хороший вариант состоит в том, чтобы зарегистрироваться в файле, названном с дополнительным ".sample" расширением, т.е. config.xml.sample. Отдельные разработчики сделали бы копию этого файла в config.xml и настроили бы его для их системы. С svn:ignore или .gitignore можно удостовериться, что неимеющее версию config.xml файл не обнаруживается как грязное все время.

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

3
ответ дан Greg Hewgill 24 November 2019 в 14:15
поделиться

Это кажется, что Вы уже добавили и передали файл подрывной деятельности (я предполагаю, что Вы используете Подрывную деятельность). Если это так, тогда существует только два способа удалить тот файл:

  1. Mark файл, как удалено и фиксацию.
  2. Работают svnadmin dump, отфильтровывают пересмотр, где Вы случайно фиксировали файл, и выполните svnadmin load.

Доверяют мне, Вы действительно не хотите делать номер 2. Это будет делать недействительным все рабочие копии репозитория. Лучшее должно сделать номер 1, отметить файл, как проигнорировано и принести извинения.

4
ответ дан Trumpi 24 November 2019 в 14:15
поделиться

Не попробовав его...

В мерзавце, если Ваши изменения не были распространены в другой репозиторий, Вы должны быть в состоянии к git rm затронутый файл (файлы), git rebase --interactive для переупорядочения фиксации удаления, чтобы быть сразу после фиксации, в которой Вы случайно добавили незаконные файлы, и затем давите те две фиксации вместе.

, Конечно, это не поможет, если кто-то еще вытянул Ваши изменения.

6
ответ дан Kai 24 November 2019 в 14:15
поделиться

Если Вы случайно 'добавляете' файл в svn & Вы не фиксировали его, можно вернуться тот файл & это удалит добавление.

8
ответ дан Glenn Slaven 24 November 2019 в 14:15
поделиться

Удалить файл уже в управлении исходным кодом:

git rm <filename>

и затем

git commit -m ...

необходимо добавить каждый файл, который Вы хотите проигнорировать в .gitignore файл. Я дополнительно всегда проверяю .gitignore файл в свой репозиторий, поэтому если кто-то проверит код его машины, и файл сгенерирован снова, он не будет 'рассматривать' его как 'грязный'.

, Конечно, если бы Вы уже фиксировали файл и кто-то еще получил Ваши изменения на другой машине, необходимо было бы изменить каждый локальный репозиторий для изменения истории. По крайней мере, это - возможное решение с мерзавцем. Я не думаю, что svn позволил бы Вам сделать это.

, Если файл уже находится на главном репозитории (мерзавец) или в сервере (svn), я не думаю, что существует лучшее решение, чем просто удаление файла в другой фиксации.

2
ответ дан Sergio Acosta 24 November 2019 в 14:15
поделиться

В Git, чтобы удалить его из дерева, но НЕ из рабочего каталога, что, я думаю, именно то, что вам нужно, вы можете использовать флаг --cached, то есть:

git rm --cached <filename>
67
ответ дан 24 November 2019 в 14:15
поделиться