Commit graph

48 commits

Author SHA1 Message Date
Magnus Henoch
508d650136 * vc-p4.el (vc-p4-state): Don't compare non-existent files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7741]
2010-08-09 08:46:04 -08:00
Magnus Henoch
0cfe10cab9 * vc-p4.el (vc-p4-workfile-unchanged-p): Return nil for files marked for deletion.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7740]
2010-08-09 08:35:34 -08:00
Magnus Henoch
1674c9ea2a * vc-p4.el (vc-p4-diff): Handle deleted files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7739]
2010-08-09 08:28:09 -08:00
Magnus Henoch
a8fbf9a3b1 * vc-p4.el (vc-p4-state): Mark file as `removed' if action is "delete".
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7738]
2010-08-09 07:53:27 -08:00
Magnus Henoch
6c3758972c * vc-p4.el (vc-p4-previous-revision): New function, shamelessly
copied from vc-svn.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7546]
2010-01-13 09:01:58 -08:00
Magnus Henoch
a546229293 * vc-p4.el (vc-p4-print-log): Accept optional argument revision,
as required by Emacs 23.1.91.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7545]
2010-01-13 08:57:06 -08:00
Magnus Henoch
a0e7fbe5e1 * vc-p4.el (vc-p4-print-log): Accept optional arguments shortlog
and limit, as required by Emacs 23.1.50.

* p4-lowlevel.el (p4-lowlevel-filelog): Accept limit argument.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7487]
2009-11-17 16:35:08 -08:00
Magnus Henoch
af857b4d50 * vc-p4.el (vc-p4-revert): Fix revert of unopened files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7486]
2009-11-17 08:06:39 -08:00
Magnus Henoch
2e8b1f0015 * vc-p4.el (vc-p4-diff): Fix Perforce file headers.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7485]
2009-11-16 14:10:55 -08:00
Magnus Henoch
4667f79c0a * vc-p4.el (vc-p4-diff): Support lists of files. Perform only a
single request to the server in the simplest case (diff edited
file to synced version).

* p4-lowlevel.el (p4-lowlevel-command-into-buffer): Don't reorder
info and text lines.
(p4-lowlevel-diff): Support lists of files as well as a single file.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7484]
2009-11-16 12:56:58 -08:00
Magnus Henoch
5305e9d39e * p4-lowlevel.el (p4-lowlevel-diff): Remove slash from directory name if needed.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7388]
2009-09-16 08:03:08 -08:00
Magnus Henoch
2d9b785e7c * vc-p4.el (vc-p4-state): Avoid error when saving non-Perforce
file inside Perforce working directory.  Still gives incorrect
'up-to-date' status in vc-dir sometimes.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7377]
2009-09-09 06:16:58 -08:00
Magnus Henoch
d4562f9ba7 * vc-p4.el (vc-p4-state): Display files present neither on client
nor in depot head as `up-to-date'.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7362]
2009-08-27 04:24:27 -08:00
Magnus Henoch
c24b959ed3 * vc-p4.el (vc-p4-state): Change if' mess to cond'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7361]
2009-08-27 04:18:55 -08:00
Magnus Henoch
7292914d99 * vc-p4.el (vc-p4-dir-status): Don't list up-to-date files.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7360]
2009-08-27 04:14:59 -08:00
Magnus Henoch
5051f6e818 * p4-lowlevel.el (p4-lowlevel-buffer-to-alist): Strip CR from end
of line.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7331]
2009-07-20 15:37:50 -08:00
Magnus Henoch
876b3ef83c * vc-p4.el: Note that Emacs 23 is required.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7330]
2009-07-20 13:07:17 -08:00
Magnus Henoch
0786aae292 (vc-p4-working-revision): Renamed from
`vc-p4-workfile-version', to avoid deprecation message on commit.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7270]
2009-06-05 11:51:36 -08:00
Magnus Henoch
97229d0b82 (vc-p4-checkin): Multiple files commit.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7269]
2009-06-05 11:47:35 -08:00
Magnus Henoch
c68de18b24 (vc-p4-init-revision): Renamed from `vc-p4-init-version'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7268]
2009-06-05 11:40:15 -08:00
Magnus Henoch
bbc4dd3ee5 Remove obsolete redefinitions.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7239]
2009-05-27 09:58:25 -08:00
Magnus Henoch
4c98e00c6b * vc-p4.el (vc-p4-annotate-command-internal): s/string-to-int/string-to-number/
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7238]
2009-05-27 09:57:06 -08:00
Magnus Henoch
d1bbfc11ce * vc-p4.el (vc-p4-dir-state): Remove unused function.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7237]
2009-05-27 09:54:56 -08:00
Magnus Henoch
eacbba72bc * vc-p4.el (vc-p4-dir-status): Handle subdirectories. Use
information from vc-p4-state.
(vc-p4-state): New argument: dont-compare-nonopened.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7236]
2009-05-27 09:54:01 -08:00
Magnus Henoch
5c078b4c12 (p4-lowlevel-diff): Handle diff of directories.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7233]
2009-05-27 06:08:50 -08:00
Magnus Henoch
1391eebeb5 (vc-p4-dir-status): Initial implementation.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7232]
2009-05-27 05:53:57 -08:00
Magnus Henoch
b52aaa3e2c Update copyright notices. Update URL; include URL of previous version.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7231]
2009-05-27 03:11:58 -08:00
Magnus Henoch
7e94b5b0ff * vc-p4.el (vc-p4-diff): Reorder let* variables. Don't use
`buffer-file-name'.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7217]
2009-05-19 11:22:59 -08:00
Magnus Henoch
b2d952500c Branched vc-p4 for work on Emacs 23 compatibility.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7216]
2009-05-19 11:18:36 -08:00
Jonathan Kamens
6afc1e6c47 Changes from Dan Nicolaescu:
For vc-p4.el:
- delete a few more vc functions that are identical in emacs
- delete now unused vc-p4-change-times
- make vc-p4-annotate-command default to the internal elisp code
- delete vc-p4-state-heuristic, it's the same as the default
- new function vc-p4-find-version
- make a few functions cope with emacs-23 (not released yet),
  that changes the first argument from FILE to FILE_LIST
- add an internal implementation for vc-annotate, simplify the
  annotate code

For p4-lowlevel.el: 
- fail graciously when offline and trying to access a file that
  is under perforce

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5999]
2007-08-01 18:27:55 -08:00
Jonathan Kamens
0ec70d5f50 Patch from Dan Nicolaescu <dann@ics.uci.edu>: Improve support for
vc-annotate and log-view and make sure that they are interoperable.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5991]
2007-07-27 04:28:08 -08:00
Jonathan Kamens
3f3aa0ac1f Customized vc-mode-line is no longer necessary, since the version that
ships with GNU Emacs is now fixed.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5990]
2007-07-27 04:19:26 -08:00
Jonathan Kamens
12e666d840 The customized version of vc-register is no longer necessary, because
the code for calling the backend init-version function has been
incorporated into GNU Emacs's standard vc-register function.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5989]
2007-07-27 04:16:38 -08:00
Jonathan Kamens
550739981d Minor bug fixes from Dan Nicolaescu <dann@ics.uci.edu>.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 5986]
2007-07-18 12:14:09 -08:00
Jonathan Kamens
435d183a4c Fix a bug in the logic for determining whether to use smerge-ediff or
backend-specific conflict resolution.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 2215]
2002-10-06 09:38:27 -08:00
Jonathan Kamens
ba127bdbfb Changed vc-print-log slightly to conform to current version of vc.el
in Emacs source tree.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 2214]
2002-10-06 09:34:02 -08:00
Jonathan Kamens
c3ee00c06d (vc-p4-find-p4config): Convert the directory in which we're searching
to an absolute path by calling expand-file-name on it, because
file-name-directory doesn't do what we expect for relative paths
((file-name-directory "..") returns nil, when we're expecting it to
eventually return "/").

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1328]
2002-01-15 09:31:41 -08:00
Jonathan Kamens
35d746c591 (vc-p4-registered): Don't consider a file registered if its current
action or head action is "delete".

(vc-p4-register): If someone tries to register a file which is
currently open for delete, offer them the choice of reverting and
editing the file, possibly preserving its contents.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1266]
2002-01-09 18:15:43 -08:00
Jonathan Kamens
1e65e958c7 Need to set default directory before trying to print the log.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1264]
2002-01-09 17:29:01 -08:00
Jonathan Kamens
b3a90ce59f Add the function vc-p4-init-version, which always returns "1".
Add a fixed version of vc-register which uses vc-p4-init-version.

Add a fixed version of vc-mode-line which sets vc-mode to nil if a
file isn't under version control, so that the VC information is
removed from the mode line of a reverted file.

Fixv vc-p4-register so that it doesn't complain if the specified
revision is "1" or if the specified comment is an empty string.

Fix vc-p4-revert so that it does the right thing if the file being
reverted was added but not yet submitted (i.e., it isn't yet actually
in the repository).

Fix vc-p4-diff so that it does the right thing with a newly added file
(i.e., diffs the file against /dev/null).

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1253]
2002-01-09 06:15:24 -08:00
Jonathan Kamens
f985840e8b Update the coument documenting vc-p4-annotate-command.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1233]
2002-01-07 10:02:47 -08:00
Jonathan Kamens
60618b6ef4 When doing an annotation, if the user called the annotate function
with a prefix argument, then prompt for the starting date for the
annotation.  Note that this requires a version of p4pr.perl that
supports the --after option.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1225]
2002-01-06 16:38:16 -08:00
Jonathan Kamens
3b5d63dd57 Compatibility with the current version of vc.el in CVS at
:pserver:anoncvs@subversions.gnu.org:/cvsroot/emacs.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1223]
2002-01-06 11:23:04 -08:00
Jonathan Kamens
bf07af865c Set ediff-default-variant even when doing merges with an ancestor.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1218]
2002-01-06 04:39:26 -08:00
Jonathan Kamens
96df41611e Fix a parenthesization error in the code for repairing some vc.el
functions.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1216]
2002-01-05 22:13:56 -08:00
Jonathan Kamens
d128cfaad4 Fix a minor working error in a comment.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1215]
2002-01-05 20:23:05 -08:00
Jonathan Kamens
5206f5e427 Add comments telling people where these files can be retrieved
from.

[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1214]
2002-01-05 19:55:28 -08:00
Jonathan Kamens
b69b02ad08 Initial version of Emacs 21 VC support for Perforce.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 1213]
2002-01-05 19:45:11 -08:00