Как я удаляю 1 файл из пересмотра в SVN?

Ничего себе, некоторые решения могут усложняться! Если вы не против использования простого глобального, просто воспользуйтесь тем, что сначала запускается событие нажатия кнопки ввода. Можно было бы дополнительно фильтровать селектор $ ('input') для одной из многих форм, используя $ ('# myForm input').

    $(document).ready(function(){
      var clkBtn = "";
      $('input[type="submit"]').click(function(evt) {
        clkBtn = evt.target.id;
      });

      $("#myForm").submit(function(evt) {
        var btnID = clkBtn;
        alert("form submitted; button id=" + btnID);
      });
    });
8
задан Guy 29 August 2008 в 01:40
поделиться

8 ответов

7
ответ дан 5 December 2019 в 06:55
поделиться

Возможно, необходимо изменить производственный пароль для предотвращения svn проблемы в целом.

2
ответ дан 5 December 2019 в 06:55
поделиться

Я, может казаться, не нахожу истории пересмотра теперь - однако, могло просто случиться так, что я не смотрю в правильном месте.

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

3
ответ дан 5 December 2019 в 06:55
поделиться

Если это - последний пересмотр (ГОЛОВА), Вы можете (РЕЗЕРВНОЕ КОПИРОВАНИЕ Вашего repo заранее) удаляют файлы того пересмотра в db\revs и db\revprops и затем запущенный следующий скрипт Python для фиксации, какой пересмотр Вы repo думает, ГОЛОВА.

например, если бы голова 522, и пароль фиксировался в 520, необходимо было бы удалить изменения 520,521 и 522.

(Этот сценарий не должен быть необходимым, после того как SVN стирают, реализован),

(Я не записал этот сценарий, я получил его отсюда),

#!/usr/bin/python

def dec_to_36(dec):
  key = '0123456789abcdefghijklmnopqrstuvwxyz'
  result = ''
  while 1:
    div = dec / 36
    mod = dec % 36
    dec = div
    result = key[mod] + result
    if dec == 0:
      break
  return result


import os, re, sys

repo_path = sys.argv[1]
rev_path = os.path.join(repo_path, 'db', 'revs')
current_path = os.path.join(repo_path, 'db', 'current')

id_re = re.compile(r'^id:\ ([a-z0-9]+)\.([a-z0-9]+)\.r([0-9]+).*')

max_node_id = 0
max_copy_id = 0
max_rev_id = 0

for rev in os.listdir(rev_path):
  f = open(os.path.join(rev_path, rev), 'r')

  for line in f:
    m = id_re.match(line)
    if m:
      node_id = int(m.group(1), 36)
      copy_id = int(m.group(2), 36)
      rev_id = int(m.group(3), 10)

      if copy_id > max_copy_id:
        max_copy_id = copy_id

      if node_id > max_node_id:
        max_node_id = node_id

      if rev_id > max_rev_id:
        max_rev_id = rev_id

f = open(current_path, 'w+b')
f.write("%d %s %s\n" % (max_rev_id, dec_to_36(max_node_id+1),
                        dec_to_36(max_copy_id+1)))
f.close()
2
ответ дан 5 December 2019 в 06:55
поделиться

Ваш пароль все еще там (svn кошка file@2342, где 2342 пересмотр, файл был все еще там).

Вы можете ''svnadmin дамп'' Вы repos в файл, поиск и заменять Вас пароль "ультрасекретом', ''svnadmin создают'' новый repos и ''svnadmin загрузка'' измененный дамп в тот новый repos. знать о двоичных данных в Вашем дампе, так используйте надлежащий editor/sed.

2
ответ дан 5 December 2019 в 06:55
поделиться

Это, казалось, работало. Таким образом, то, что я сделал, было:

  1. Скопируйте файл в другую папку.
  2. Сделайте TortoiseSVN удаляет из текущей папки, сопровождаемой фиксацией.
  3. Копия файл въезжает задним ходом к папке.
  4. Добавьте использование файла TortoiseSVN и фиксация снова.

Я, может казаться, не нахожу истории пересмотра теперь - однако, могло просто случиться так, что я не смотрю в правильном месте.

Таким образом, измененный вопрос теперь был бы, как я могу найти историю пересмотра файла, который был удален и затем повторно отправил SVN?

(BTW, который я приношу извинения за то, что не был задан вопрос более точно ранее как я, никогда не упоминал, что одна из опций состояла в том, чтобы стереть всю историю пересмотра, поскольку это не произошло со мной.)

0
ответ дан 5 December 2019 в 06:55
поделиться

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

-3
ответ дан 5 December 2019 в 06:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: