Check diff against file on the server

后端 未结 2 1204
情歌与酒
情歌与酒 2021-01-30 03:14

I have a working copy of a repository on my machine, and I know that it has been updated on the server. I would like to know how to get the difference between the new version an

相关标签:
2条回答
  • 2021-01-30 03:26

    The difference between working copy and HEAD; the changes which would need to be made to what is now in the repository (HEAD), to produce your working copy:

    svn diff -r HEAD --old=<file>
    

    Of possible interest, the difference between BASE and HEAD; changes that have been checked into the repository since you last updated working copy:

    svn diff -r BASE:HEAD <file>
    

    And of course the difference between BASE and working copy; the changes you have made since you last updated working copy:

    svn diff <file>
    


    There are three versions being discussed: BASE, working copy, and HEAD.

    • BASE: <file> as last checked out / updated. What working copy would revert to after using svn revert
    • working copy: local modifications to <file> which has been checked out / updated as recently as BASE
    • HEAD: latest modifications in repository. Equivalent to BASE iff no changes have been committed since <file> was checked out / updated as working copy.
    0 讨论(0)
  • 2021-01-30 03:46

    The working copy is revision BASE. The latest copy from the repository is revision HEAD. This will compare your working copy against the HEAD revision:

    svn diff -r HEAD <file>
    

    Actually that'll spit the changes out in reverse, i.e. it tells you how to go from HEAD to BASE. So technically you want:

    svn diff -r BASE:HEAD <file>
    

    Can you spare the keyboard strokes? Only you and your deity know that answer.

    0 讨论(0)
提交回复
热议问题