commit - 26362bf08ddddf6e93d703ea4e7ef8cbd7174fe2
commit + 241a3b1222c05b9c84b192f6afa4ee6eb71f4a7f
blob - 6a75d699fb09972eebfac46bcce155085982502f
blob + 2f897c15f74a636ac046cad5214bdc8344b8d0fe
--- vc-got.el
+++ vc-got.el
;; * register DONE
;; - responsible-p DONE
;; - receive-file NOT NEEDED, default `register' works fine
-;; - unregister NOT IMPLEMENTED, no use case
+;; - unregister DONE
;; * checkin DONE
;; * find-revision DONE
;; * checkout NOT IMPLEMENTED
(vc-got--add files))
(defalias 'vc-got-responsible-p #'vc-got-root)
+
+(defun vc-got-unregister (file)
+ "Unregister FILE."
+ (with-temp-buffer
+ (unless (zerop (vc-got--call "remove" "-fk" "--" file))
+ (error "[vc-got] can't unregister %s: %s" file (buffer-string)))))
;; XXX: generally speaking, files cannot be nil. But we have to
;; handle that case too, because vc-got-stage-commit will call