Как проверить файл с помощью SharpsVN

Я попытался извлечь файл с помощью SharpsVN из удаленного репозитория, но обнаружил, что SharSVN не может извлекать один файл только из папки извлечения, пожалуйста, помогите мне узнать, как извлечь файл? Спасибо. Мой код

SvnUpdateResult result;
        SvnCheckOutArgs checkoutArgs = new SvnCheckOutArgs();
        string target = txtRepository.Text.Trim();
        SvnUriTarget url = new SvnUriTarget(target);
        string fileName = url.FileName;

        string path = folder + "\\" + fileName;
        using (SvnClient client = new SvnClient())
        {
            try
            {
                client.CheckOut(url,txtLocalFilePath.Text.Trim(),out result);//.Update(path,updateArgs,out result);
                if (result != null)
                {
                    WriteCheckOutTime(txtRepository.Text.Trim(), result.Revision);
                    MessageBox.Show("Check out success!", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }

            }
            catch (SvnException svnException)
            {
                MessageBox.Show(svnException.Message + "Check out error!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (UriFormatException uriException)
            {
                MessageBox.Show(uriException.Message + "Check out error!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }

person Jason Lee    schedule 20.01.2015    source источник


Ответы (2)


Наименьший элемент, который вы можете проверить с помощью Subversion, — это каталог. Невозможно проверить один файл.

Вы можете извлечь каталог, но оставить его пустым, через Разреженные каталоги. Затем обновите только интересующий вас файл. Но вы должны начать с каталога.

person alroc    schedule 26.01.2015

К вашему сведению, если вы хотите оформить заказ пустым, используйте следующий синтаксис

//first define args

SvnCheckOutArgs args = new SvnCheckOutArgs();

// then  for checkout only forlder empty

args.Depth = SvnDepth.Empty;

//checkout folder

client.CheckOut(url,txtLocalFilePath.Text.Trim(),args,out result)
person Arnaud ROGER    schedule 18.04.2019