     ["svn revert" svn-status-revert t]
     ["svn resolved" svn-status-resolved t]
     ["svn cleanup" svn-status-cleanup t]
+    ["svn lock" svn-status-lock t]
+    ["svn unlock" svn-status-unlock t]
     ["Show Process Buffer" svn-status-show-process-buffer t]
+    ("Branch"
+     ["diff" svn-branch-diff t]
+     ["Set Branch list" svn-status-set-branch-list t]
+     )
     ("Property"
      ["svn proplist" svn-status-property-list t]
      ["Set Multiple Properties..." svn-status-property-set t]

(defvar svn-status-head-revision nil)
(defvar svn-status-root-return-info nil)
(defvar svn-status-property-edit-must-match-flag nil)
(defvar svn-status-propedit-property-name nil)
(defvar svn-status-propedit-file-list nil)
(defvar svn-status-mode-line-process "")
(defvar svn-status-mode-line-process-status "")

              (let ((dirname (directory-file-name dir)))
                (if (not (member dirname dir-set))
                    (setq dir-set (cons dirname dir-set)))))
          (if (and skip-double-external-dir-entry-name (string= skip-double-external-dir-entry-name path))
              ;; merge this entry to a previous saved one
              (let ((info (gethash path externals-map)))
                ;; (message "skip-double-external-dir-entry-name: %s - path: %s" skip-double-external-dir-entry-name path)
                (if info
                    (progn
                      (svn-status-line-info->set-localrev info local-rev)
                      (svn-status-line-info->set-lastchangerev info last-change-rev)
                      (svn-status-line-info->set-author info author)
                      (svn-status-message 3 "merging entry for %s to %s" path info)
                      (setq skip-double-external-dir-entry-name nil))
                  (message "psvn: %s not handled correct, please report this case." path)))
            (setq svn-status-info
                  (cons (svn-status-make-line-info path
                                                   (gethash path old-ui-information)
                                                   svn-file-mark
                                                   svn-property-mark
                                                   local-rev
                                                   last-change-rev
                                                   author
                                                   svn-update-mark
                                                   svn-wc-locked-mark
                                                   svn-with-history-mark
                                                   svn-switched-mark
                                                   svn-repo-locked-mark
                                                   nil) ;;psvn-extra-info
                        svn-status-info)))
          (when (eq svn-file-mark ?X)
            (svn-puthash (match-string 1) (car svn-status-info) externals-map)
            (svn-status-message 3 "found external: %s %S" (match-string 1) (car svn-status-info)))
          (setq revision-width (max revision-width
                                    (length (number-to-string local-rev))
                                    (length (number-to-string last-change-rev))))
