We send a changelists log to developers. They may see submissions and click on a link that should open p4v at a specific changelist.
I'm looking for something like
p4v -submitted 12345
or
p4vc submittedchanges 1234
Even tried p4v -cmd "<command>" but only certain commands are allowed.
Unfortunately, all of the above doesn't work.
Eventually, as proposed by Bryan Pendleton yesterday, I've connected my page to P4 Swarm. It is working as expected.
Thanks Bryan.
Related
I'm trying to use Perforce from Windows Explorer (Windows 7), but the Perforce context menu doesn't have any of the useful commands (checkout, submit, etc). Instead it has a disabled entry that says, "No workspace has been set for this connection."
The troubleshooting page I found says, "The problem is that P4EXP [Perforce's Windows Explorer plugin) ignores p4v’s configuration. You can configure P4EXP from the command line." It then explains how to do that by entering three "p4 set" commands.
But when I enter those commands, they have no effect whatever. And I'm not sure why they should; I got the information I needed to enter (client name, port, and username) by running the "p4 client -o" command. In other words, I entered setting into P4 that I got from P4. There must be something else I need to do, or it would have worked from the get-go. But what?
It is great that you have the context menu set with perforce with windows explorer plugin. In order to make it work, one needs to set up the environment variables that point to correct workspace (in contrast to svn, perforce does not have .svn directory in each versioning folder). This can be achieved with the following command:
p4 set P4CLIENT=my_perforce_workspace
given, e.g., that your path is in D:\my_perforce_workspace. If you do not have p4 on your system, install it from helix-command-line-client-p4.
Additional links:
http://maillist.perforce.com/pipermail/perforce-user/2009-September/025858.html
https://www.perforce.com/perforce/r17.1/manuals/cmdref/Content/CmdRef/P4CLIENT.html
If p4 set shows the right settings but the Explorer plugin shows something else, the difference could be P4CONFIG (which lets you have different settings per-directory). cd to the same folder you're trying to use the Explorer plugin in, and run p4 set there -- any difference?
Your comment about p4 client -o is a little confusing -- note that if you have no workspace defined, p4 client -o will give you a template for a new workspace, but it will not create it (you'd have to pipe it to p4 client -i). The command you should be running to verify your connection is p4 info.
I saw this SO question where someone said how to enable p4 server to email me on changelist submisions. However, is there a way to enable notifications for any file with a *.js extension, for example?
After installing the review daemon, set the "Reviews:" section of your user spec to "Reviews: //....js", to indicate that you wish to review only those changes which touched files ending in .js.
Is it possible to delete a file from your workspace and then hitting submit in perforce and that file being deleted from the perforce server?
open for read: F
\LocalSource\Perforce\MainBranch\blah\New Text Document.txt: The system cannot find the file specified.
Submit aborted -- fix problems then use 'p4 submit -c 4799463'.
Some file(s) could not be transferred from client.
I get this message when I try to submit. In Subversion I could do this. I had a look on the internet and it looks like this isn't possible, but I thought I'd check on here.
(The reason I want this is because I have a spreadsheet and I want to extract the modules from the spreadsheet and put them into source control. But sometimes modules in that spreadsheet may be removed and I want to be able to just checkin the modules that are changed and do deletions on the server, without having to go into the perforce client and deleting the files marked for deletion in there.) One method was to delete all the files in perforce and then do a dummy commit of an empty directory. And then add all the files again extracted from the spreadsheet and do an add. But then in my version history I always will have a version with a full delete.
Any simple ideas, special commands that I can use?
Thanks,
Chris
If you delete files directly on disk, without using the Perforce client to delete them (e.g., you use your spreadsheet command to delete those files directly), that's called "offline work", and in order to tell Perforce that you've made those changes, you just need to go back into your P4V window and use "Reconcile Offline Work".
See Working Disconnected From The Perforce Server for complete instructions.
See also this related question: Sync offline changes to a workspace into Perforce
Perforce has a command-line client (http://www.perforce.com/product/components/perforce_commandline_client) you should be able to execute from Excel as any exe file via the Shell function.
I've just set up Perforce on my home computer so that I can work at home without having to lug my work computer around.
I used the same workspace as the one I use at work, but when I try to get the latest revision, I don't get all of the files. Some subfolders are missing despite being mapped like this: //depot/some_folder/... //My_Workspace/some_folder/... some_folder has a subfolder some_subfolder but my workspace didn't pull that folder in for some reason... None of the other lines in "View" have anything to do with some_folder so I don't think they are the issue.
Anyone have any ideas?
The Perforce server tracks what files you pull in your workspace. This is done for speed, so when you do a "Get latest revision" it will only pull the files that need to be updated. Since you are using the same workspace, Perforce thinks you have them in sync already. You have 2 options.
Use p4 sync -f //files/... (If your using p4v, right click->Get revision, then in the options click the Force checkbox) This will tell perforce to sync everything to the latest revision. But then you will have to use this option at work and home, since Perforce will now think you have everything in sync, when really only the files at home are in sync.
Use a different workspace for home and work.
In the GUI, instead of doing the get latest, try doing the context menu for "Get Revision...", and in that window that comes up, check the "Force" checkbox and give that a try.
Create a different workspace to use on your home computer. Do not try to use the same workspace on two different computers unless they're pointing at the same underlying filesystem.
In my case, I have to get the latest into a different folder. I renamed the folder from original workspace, but it did not work if I do a get latest. I created a different workspace, and it worked.
We are using P4 for free with two users. In the P4V admin gui I can see both myself and my partner as users, and in the P4V gui I can see all workspaces (clients) and all changelists (both mine and my partner's). From the command line, 'p4 users' only shows me, 'p4 clients' only shows my local workspace, etc. Is there some mode, environment setting, or special directory from which I have to use the p4 command line to see those global objects? I believe I am a p4 superuser (since I read this is the default on installation and we didn't change anything). I'm obviously missing something very basic about the relationship between p4 command line and P4V.
The reason I need to use the command line is to delete an old client workspace (used on a different machine) that has an empty changelist associated with it. I therefore need to use 'p4 client -d -f old-workspace-name' from the command line. But when I do it tells me client 'old-workspace-name' doesn't exist.
D'oh! I had a setup with two p4 servers (one that I had set up briefly as an experiment and forgot about). My gui was pointing to the real one and my command line was pointing to the experimental one. They both had a client with a certain name, so I was confusing them for being the same. Hope this helps someone else who makes the same mistake.