EzDevInfo.com

visualsvn-server interview questions

Top visualsvn-server frequently asked interview questions

VisualSVN Server Repository Backup/Restore

I have a Windows Server 2008 with VisualSVN Server hosting a repository. On the client computers I have TortoiseSVN client.

How can I create a backup of my repository that is hosted on the server and then restore it?


Source: (StackOverflow)

Working Copy Locked

I'm developing a web using subversion as version control, but got "working directory locked" error message

Here's the story:

I have

PC-A:

  • Windows XP Pro
  • VisualSVN 2.5.2
  • Tortoise SVN 1.7.3

PC-B:

  • Windows XP Home
  • Tortoise SVN 1.7.3

I have create repository on PC-A using VisualSVN.

From PC-B, I Checkout http:\\PC-A:81\svn\test\trunk to D:\xampp\htdocs\test-lalala.

From PC-A, I also checkout http:\\PC-A:81\svn\test\trunk to D:\xampp\htdocs\test-lalala.

I Create a post-commit hooks running my-post-commit.bat file so when I commit to http:\\PC-A:81\svn\test\trunk, folder D:\xampp\htdocs\test-lalalaon PC-A will updated, so other people can see the result.

"C:\Program Files\VisualSVN Server\bin\svn.exe" update "D:\xampp\htdocs\test-lalala" --username myusername --password mypassword --config-dir "C:\Program Files\VisualSVN Server\conf" 

On PC-B, Create index.php file, and commit. When I commit, I get this error message

error message

On PC-A, I try to right-click on D:\xampp\htdocs\test-lalala TortoiseSVN > CleanUp, and check "cleanup working copy status" and "Include externals" (checked by default). Try to add file and commit, but still got the same error message.

I try to look for lock file on .svn folder but there are no lock file. I also try to delete working copy on PC-A D:\xampp\htdocs\test-lalala and checkout again, but when I commit, still got the same error message.

How to solve this error message? So when I commit, the folder will updated automatically ?


Source: (StackOverflow)

Advertisements

Commit failed: already locked

I just tried to add & commit about 25,000 files to VisualSVN using TortoiseSVN.

The commit dialog locked up (to be expected I guess), but after a while of the thread being blocked, I killed Tortoise, hoping to commit smaller chunks of files at a time.

Now I get this error:

Error: Commit failed (details follow):

Working copy 'C:\INTERNAL\Icons\Oxygen 4.10.1' locked.

'C:\INTERNAL\Icons\Oxygen 4.10.1\scalable\places\PaxHeaders.14455' is already locked

I've killed TortoiseProc.exe and restarted VisualSVN a couple of times, but I'm still getting the error.

I've also right-clicked the folder and chose Release lock, but I get:

There's nothing to unlock. No file has a lock in this working copy.

When I run svn st, I get a huge long output of all the files waiting to be added.

Even when I try to commit something unrelated (a couple of dirs up), I get the same error.

I am able to commit successfully to a separate repo on the same server.

How can I release the lock and commit these files?


Source: (StackOverflow)

TortoiseSVN file overlay performance - are there any ways of improving it?

I'm using TortoiseSVN on my development machine (running Windows Server 2003) and VisualSVN Server on the server side. Both are the latest versions (against Subversion 1.6.5).

Everything works well generally; however I'm getting a little frustrated with the TortoiseSVN file overlays (the little icons that show locked or modified statuses on the files in Explorer). Sometimes these overlays seem to update instantly after a commit or lock, sometimes they only change after a couple of refreshes, and sometimes they show completely the wrong status until the next reboot.

It might be an impossible question to answer, given the amount of variables (other installed software, for example), but are there any known tricks to speed up the updating of these overlays?


Source: (StackOverflow)

Comparison of Subversion servers (VisualSVN, CollabNet, uberSVN, etc.)? [closed]

I am helping my business unit set up a Subversion server, and I'm evaluating some options like VisualSVN Server, CollabNet Subversion Edge, and uberSVN.

I've tried the basic version of VisualSVN Server, and it seemed fairly decent. I also tried uberSVN, and quickly saw how frustrating it is that you can't batch-add existing repositories.

Has anyone written up a good point-by-point comparison between the various Subversion server products out there? I have yet to find anything nearly as epic and comprehensive as what the CI Feature Matrix has done for comparing continuous integration servers.

Can anyone summarize the differentiating features between the various Subversion servers? Or are they largely a matter of personal taste?

Thanks!


Source: (StackOverflow)

Is SVN 1.5 Merge-tracking ready for prime-time?

I'm already using SVN 1.5, both sever(VisualSVN 1.5.1) and client-side(TortoiseSVN 1.5.1) but we are using a fairly lengthy SVN Branch-Merge dance.

How ready is the Merge-Tracking facility of SVN 1.5.x and is it yet possible to use it from TortoiseSVN?


Source: (StackOverflow)

Post-Commit Hook to trigger automatic Jenkins Build

I know that there are many similar postings, but I have not found a solution, and the advice and solutions presented in the other posts don't quite jive with what I'm seeing.

The scenario is pretty darn simple: I have a project in Eclipse, and when I check-in changes from that project to our Subversion server (i.e., VisualSVN Server 2.5.3), I want our Jenkins continuous integration server (i.e., Jenkins 1.546) to pick up this change and kick off a new build. I do not want to poll from Jenkins.

I've been mostly following the steps in this article. Here's my post-commit hook script:

repos   = WScript.Arguments.Item(0)
rev     = WScript.Arguments.Item(1)
svnlook = WScript.Arguments.Item(2)
jenkins = WScript.Arguments.Item(3)

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("C:\Program Files (x86)\VisualSVN Server\log.txt")

objFile.Writeline "repos=" & repos
objFile.Writeline "rev=" & rev
objFile.Writeline "svnlook=" & svnlook
objFile.Writeline "jenkins=" & jenkins

Set shell = WScript.CreateObject("WScript.Shell")

Set uuidExec = shell.Exec(svnlook & " uuid " & repos)
Do Until uuidExec.StdOut.AtEndOfStream
  uuid = uuidExec.StdOut.ReadLine()
Loop

objFile.Writeline "uuid=" & uuid

Set changedExec = shell.Exec(svnlook & " changed --revision " & rev & " " & repos)
Do Until changedExec.StdOut.AtEndOfStream
  changed = changed + changedExec.StdOut.ReadLine() + Chr(10)
Loop
objFile.Writeline "changed=" & changed

url = jenkins + "crumbIssuer/api/xml?xpath=concat(//crumbRequestField,"":"",//crumb)"
Set http = CreateObject("Microsoft.XMLHTTP")
http.open "GET", url, False
http.setRequestHeader "Content-Type", "text/plain;charset=UTF-8"
http.send
crumb = null

objFile.Writeline "rev url=" & url
objFile.Writeline "http.status=" & http.status
objFile.Writeline "http.responseText=" & http.responseText

if http.status = 200 then
  crumb = split(http.responseText,":")
end if

url = jenkins + "subversion/" + uuid + "/notifyCommit?rev=" + rev + "&token=pinkfloyd65"
objFile.Writeline "url=" & url

if not isnull(crumb) then 
    objFile.Writeline "crumb(0)=" & crumb(0)
    objFile.Writeline "crumb(1)=" & crumb(1)
end if

if isnull(crumb) then 
    objFile.Writeline "crumb=null"
end if

Set http = CreateObject("Microsoft.XMLHTTP")
http.open "POST", url, False
http.setRequestHeader "Content-Type", "text/plain;charset=UTF-8"
if not isnull(crumb) then 
  http.setRequestHeader crumb(0),crumb(1)
  http.send changed
  if http.status <> 200 then
    objFile.Writeline "Error. HTTP Status: " & http.status & ". Body: " & http.responseText
  end if

  if http.status = 200 then
    objFile.Writeline "HTTP Status: " & http.status & ".\n Body: " & http.responseText
  end if
end if

The issue is that, although the POST command above ends up getting a 200 response back, the job never kicks off. Nothing ends up happening. Alright, so let's check the Jenkins job configuration; maybe I'm missing a setting or something. Well, under the Build Triggers section, I've checked the option for "Trigger builds remotely (e.g., from scripts)" and I've supplied an authentication token as well. But, the directions underneath that section look different from what I've been doing:

Use the following URL to trigger build remotely: JENKINS_URL/job/<job-name>/build?token=TOKEN_NAME or /buildWithParameters?token=TOKEN_NAME Optionally append &cause=Cause+Text to provide text that will be included in the recorded build cause.

So, it seems like there's a delta between the sets of instructions I'm seeing, and I'm not sure how to bridge that gap. It seems pretty obvious to follow the instructions on the Jenkins job configuration page, except that I don't know how I'd get the job name, rather than the UUID.

Another thing to note is my repository setup. Since the CI server is used by many groups and departments, I thought I'd be all smart and create a top-level repository to house just my department's projects. So, I have a setup something like:

VisualSVN Server  
  -- Repositories  
     -- Project_A  
     -- Project_B  
     -- <my-department>  
        -- DepartmentProject_A  
        -- DepartmentProject_B  

I'm wondering if the repository structure is adding to my issues here, but I feel like I should be able to find out which specific repository any changes came from. If that were true, then I could adjust my script to use the job name, rather than UUID, and then follow the explicit instructions seen on my CI server's configuration page. When I log the incoming repos variable in my vbs script, it points to the top-level department repository, rather than the project's child repository (i.e., D:\<visual-svn-repos>\<my-department> rather than D:\<visual-svn-repos>\<my-department>\DepartmentProject_B).

Any help would be greatly appreciated, thanks guys.


Source: (StackOverflow)

Has anyone successfully migrated VSS 2005 over to SVN?

I've been playing around with SVN for the last little while and have come to love its power and user experience and that we can tie it into our bug tracking system to simplify everyone's lives. So it's come to the time that we've decided to migrate our VSS 2005 setup across to SVN and I am now coming unstuck.

It seems there are a number of tools out there that claim to be able to complete the migration from VSS 2005 to SVN, but I can't figure out which is the best one or which will provide me with the most complete transition. I need one that will migrate the full history across rather than just checking out from VSS and checking into SVN.

I found Polarion SVN Importer which looks both powerful and highly configurable, however, I can't get the damn thing to work, it complains that it can't pull the file list from $/ in VSS. If I run the same command it's tripping up on manually, everything seems to run okay, so I can't figure it out.

Has anyone successfully migrated their source from VSS 2005 to SVN and if so what tools did you use and what were your findings? Any caveats or gotchas would be most useful so know as well as anything that was useful/surprising or was a let down or just plain misrepresented.


Source: (StackOverflow)

Bug Tracking for Windows and SVN

I'm working as part of a volunatry team creating an open source product with a permissive license. We are currently using Visual SVN Server/TortoiseSVN for source control and TeamCity for our continuous integration builds.

I would like to add a bug tracking component into the mix that will integrate into SVN. Ideally, I'd like to use FogBugz but we have no budget. So, I need an alternative. The requirements are:

  • Must be free or have a free version supporting at least 20 developers (we're volunteers!)
  • Must integrate with VisualSVN Server
  • Must run on Windows
  • I prefer Microsoft technology (ASP.Net over PHP; SQL Server over MySQL, etc) because we are a Microsoft shop, we have experience with those tools and already have them installed.
  • Must be able to work with a geographically distributed team
  • Must work with Express editions of Visual Studio (the developers don't all have the Pro version so we can't rely on Visual Studio add-ins).

I'd like The Community's recommendations, please, for products that meet all of the above requirements.

[Clarification: our license is very close (though not word-for-word) to the MIT license.]


Source: (StackOverflow)

Strange error 500 with svn commit on one simple file

We use VisualSVN server here at work and everything works fine, we have over 50 repositories. I tried today to put into a repository a web site but it keeps crashing at one specific single file that i've isolated.

Adding: C:\Work\LAN6505\web\trunk\common_files\includes\fr\debut.inc.php  
Sending content: C:\Work\LAN6505\web\trunk\common_files\includes\fr\debut.inc.php  
Error: Commit failed (details follow):  
Error: Server sent unexpected return value (500 Internal Server Error) in response to  
Error:  PUT request for  
Error:  '/svn/LAN6505/!svn/txr/13-i/web/trunk/common_files/includes/fr/debut.inc.php'  
Completed!:   

I simply get a 500 error, no more informations. Anyone know what to do with that? Is there a log file for VisualSvn server that i could look into.

If i copy the file to another repository with similar structure, the problem doesn't occur...

The code of the file can be found : http://pastebin.com/PwTCQSP7

Hope someone can help...


UPDATE

Event Type:       Error
Event Source:   VisualSVN Server 2.5
Event Category:               Apache 
Event ID:             1001
Date:                    1/23/2012
Time:                    9:37:10 AM
User:                    ACTIVIS-991RBEL\Mathieu Dumoulin
Computer:         DELL-PE2900-01
Description:
Could not get next bucket brigade  [500, #0]
[client 192.168.0.64]

UPDATE #2

Soooo, after spending 2.5 days migrating my SVN server on windows to a SVN server on linux, i got the same problem again:

[Fri Feb 24 16:35:21 2012] [error] [client 192.168.0.64] Could not get next bucket brigade (URI: /svn/LAN6505/!svn/wrk/289e3161-cdbf-d44d-9716-c6390289ec92/web/trunk/common_files/includes/fr/debut.inc.php) [500, #0]

[Fri Feb 24 16:36:12 2012] [error] [client 192.168.0.64] Could not get next bucket brigade (URI: /svn/LAN6505/!svn/wrk/554a4a6c-a015-7045-b0c6-072ffe01f854/web/trunk/common_files/includes/fr/debut.inc.php) [500, #0]

[Fri Feb 24 16:48:17 2012] [error] [client 192.168.0.64] Could not get next bucket brigade (URI: /svn/LAN6505/!svn/wrk/15bd0f7e-06b9-b046-8c67-5f9778fab9b5/web/trunk/common_files/includes/fr/debut.inc.php) [500, #0]


Source: (StackOverflow)

Upgrade Subversion Server from 1.7 to 1.8

Related to How to upgrade SVN server from 1.6 to 1.7 and Will TortoiseSVN 1.7 work properly against a SVN 1.6 repository?.

Updated VisualSVN-Server to 2.6.0 (SVN 1.8) and local TortoiseSVN clients to 1.8. I've upgraded local working copies to 1.8.

My question is simply is there anything to do to the actual repository? How can you determine the repository version? Can/Does it need to be upgraded?

I can easily update the working copy, but I can't seem to find anything that mentions the actual server repository.


Source: (StackOverflow)

WebSVN with VisualSVN Server, anyone gotten authentication to work?

I have a VisualSVN Server installed on a Windows server, serving several repositories.

Since the web-viewer built into VisualSVN server is a minimalistic subversion browser, I'd like to install WebSVN on top of my repositories.

The problem, however, is that I can't seem to get authentication to work. Ideally I'd like my current repository authentication as specified in VisualSVN to work with WebSVN, so that though I see all the repository names in WebSVN, I can't actually browse into them without the right credentials.

By visiting the cached copy of the topmost link on this google query you can see what I've found so far that looks promising.
(the main blog page seems to have been destroyed, domain of the topmost page I'm referring to is the-wizzard.de)

There I found some php functions I could tack onto one of the php files in WebSVN. I followed the modifications there, but all I succeeded in doing was make WebSVN ask me for a username and password and no matter what I input, it won't let me in.

Unfortunately, php and apache is largely black magic to me.

So, has anyone successfully integrated WebSVN with VisualSVN hosted repositories?


Source: (StackOverflow)

Could not read chunk size. Error in SVN

I have recovered SVN repository from crashed PC and now I can checkout files from few directories but in one place during checkout it says:

Error: REPORT of '/svn/RepTest/!svn/vcc/default': Could not read chunk size: 
Secure connection truncated (https://mypc:8443) 

Could anyone help me, how to fix that repository? Thanks!


Source: (StackOverflow)

Import certificate into VisualSVN Server

Is it possible to import the valid certificate of the Windows Server, where VisualSVN is installed, into VisualSVN?


Source: (StackOverflow)

How Do you get AnkhSVN to work with VisualSVN Server?

I'm looking for the easiest free SVN implementation I can find.

I downloaded and installed VisualSVN Server - pretty easy. Installed TortioseSVN - pretty easy - both work together. Installed AnkhSVN, I can't get it to connect to the repository on the VisualSVN Server.

Is there anything special I need to do to get AnkhSVN to talk to the VisualSVN Server?


Source: (StackOverflow)