Mercurial > emacs
comparison lisp/vc.el @ 94569:c6ccf57e7e6e
Added to-do items.
author | Eric S. Raymond <esr@snark.thyrsus.com> |
---|---|
date | Sat, 03 May 2008 06:01:19 +0000 |
parents | a0bb8ca25a33 |
children | b288a2a8adc3 |
comparison
equal
deleted
inserted
replaced
94568:b7071012e28e | 94569:c6ccf57e7e6e |
---|---|
602 ;; - "snapshots" should be renamed to "branches", and thoroughly reworked. | 602 ;; - "snapshots" should be renamed to "branches", and thoroughly reworked. |
603 ;; | 603 ;; |
604 ;; - when a file is in `conflict' state, turn on smerge-mode. | 604 ;; - when a file is in `conflict' state, turn on smerge-mode. |
605 ;; | 605 ;; |
606 ;; - figure out what to do with conflicts that are not caused by the | 606 ;; - figure out what to do with conflicts that are not caused by the |
607 ;; file contents, but by metadata or other causes. | 607 ;; file contents, but by metadata or other causes. Example: File A |
608 ;; gets renamed to B in one branch and to C in another and you merge | |
609 ;; the two branches. Or you locally add file FOO and then pull a | |
610 ;; change that also adds a new file FOO, ... | |
608 ;; | 611 ;; |
609 ;; - add a generic mechanism for remembering the current branch names, | 612 ;; - add a generic mechanism for remembering the current branch names, |
610 ;; display the branch name in the mode-line. Replace | 613 ;; display the branch name in the mode-line. Replace |
611 ;; vc-cvs-sticky-tag with that. | 614 ;; vc-cvs-sticky-tag with that. |
615 ;; | |
616 ;; - C-x v b does switch to a different backend, but the mode line is not | |
617 ;; adapted accordingly. Also, it considers RCS and CVS to be the same, | |
618 ;; which is pretty confusing. | |
612 ;; | 619 ;; |
613 ;; - vc-diff should be able to show the diff for all files in a | 620 ;; - vc-diff should be able to show the diff for all files in a |
614 ;; changeset, especially for VC systems that have per repository | 621 ;; changeset, especially for VC systems that have per repository |
615 ;; version numbers. log-view should take advantage of this. | 622 ;; version numbers. log-view should take advantage of this. |
616 ;; | 623 ;; |
669 ;; from a file only present in git, and then typing RET on some log entry, | 676 ;; from a file only present in git, and then typing RET on some log entry, |
670 ;; vc will bombs out because it wants to see the file being in CVS. | 677 ;; vc will bombs out because it wants to see the file being in CVS. |
671 ;; Those logs should likely use a local variable to hardware the VC they | 678 ;; Those logs should likely use a local variable to hardware the VC they |
672 ;; are supposed to work with. | 679 ;; are supposed to work with. |
673 ;; | 680 ;; |
681 ;; - Another important thing: merge all the status-like backend operations. | |
682 ;; We should remove dir-status, state, dir-state, and dir-status-files, and | |
683 ;; replace them with just `status' which takes a fileset and a continuation | |
684 ;; (like dir-status) and returns a buffer in which the process(es) are run | |
685 ;; (or nil if it worked synchronously). Hopefully we can define the old | |
686 ;; 4 operations in term of this one. | |
687 ;; | |
674 ;; - backends that care about vc-stay-local should try to take it into | 688 ;; - backends that care about vc-stay-local should try to take it into |
675 ;; account for vc-dir. Is this likely to be useful??? | 689 ;; account for vc-dir. Is this likely to be useful??? |
676 ;; | 690 ;; |
677 ;; - vc-dir listing needs a footer generated when it's done to make it obvious | 691 ;; - vc-dir listing needs a footer generated when it's done to make it obvious |
678 ;; that it has finished. | 692 ;; that it has finished. |
679 ;; | 693 ;; |
694 | |
680 ;;; Code: | 695 ;;; Code: |
681 | 696 |
682 (require 'vc-hooks) | 697 (require 'vc-hooks) |
683 (require 'tool-bar) | 698 (require 'tool-bar) |
684 (require 'ewoc) | 699 (require 'ewoc) |
1502 (message "All version-controlled files below %s selected." | 1517 (message "All version-controlled files below %s selected." |
1503 default-directory) | 1518 default-directory) |
1504 (cons | 1519 (cons |
1505 (vc-responsible-backend default-directory) | 1520 (vc-responsible-backend default-directory) |
1506 (list default-directory)))) | 1521 (list default-directory)))) |
1522 ;; If we're allowing unregistered fiiles and visiting one, select it. | |
1507 ((and allow-unregistered (not (vc-registered buffer-file-name))) | 1523 ((and allow-unregistered (not (vc-registered buffer-file-name))) |
1508 (cons (vc-responsible-backend | 1524 (cons (vc-responsible-backend |
1509 (file-name-directory (buffer-file-name))) | 1525 (file-name-directory (buffer-file-name))) |
1510 (list buffer-file-name))) | 1526 (list buffer-file-name))) |
1511 (t (error "No fileset is available here."))))) | 1527 (t (error "No fileset is available here."))))) |