Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


S_Luis last won the day on June 10 2015

S_Luis had the most liked content!

Community Reputation

2 Neutral

About S_Luis

  • Rank
  1. Undo changes to a hidden changes item from CLI

    Here to help
  2. Undo changes to a hidden changes item from CLI

    Hi! The cm unco command undoes a checked out file even if it is inside the hidden changes item list. As it doesn't seem to work for you, I'll guess that you have modified your file locally, but you have NOT checked it out (which is OK! let's solve it) You can see the status of locally changed but hidden files with the --hiddenchanged flag fo the status command. Then, once you know which files are you interested in, you can do both a checkout and an undo checkout, which will revert your local changes. The full cycle: 1) --hiddenchanged allows you to see locally modified files if they are not checked out (requires a disk search) $ cm status --hiddenchanged cs:32@rep:myrepo@repserver localhost:8087 Modified items (CH = changed, CO = checkout, CP = copied (new), RP = replaced) CH MyHiddenChangedFile.cs 2) checkout allows you to check out that file. Notice the lack of the --hiddenchanged argument the second time I call cm status, as it is no longer needed. $ cm checkout MyHiddenChangedFile.cs The selected items are about to be checked out. Please wait... Item C:\Users\sluisp\repos\tests\MyHiddenChangedFile.cs was correctly checked out $ cm status cs:32@rep:myrepo@repserver localhost:8087 Modified items (CH = changed, CO = checkout, CP = copied (new), RP = replaced) CO MyHiddenChangedFile.cs 3) undocheckout allows you to undo the checkout on that file, which will also revert its changes: $ cm undocheckout MyHiddenChangedFile.cs C:\Users\sluisp\repos\tests\MyHiddenChangedFile.cs unchecked out correctly $ cm status cs:32@rep:myrepo@repserver localhost:8087 $ cm status --hiddenchanged cs:32@rep:myrepo@repserver localhost:8087 Please let me know if this solved your issue
  3. Update RSS Trigger on Linux Server

    Almost two years ago I wrote a detailed blogpost to achieve something similar: Integrating Plastic SCM with Google Cloud Messaging. Instead of updating a RSS feed, this blogpost describes how to send a push notification to an Android device. The trigger code was generic enough so that the notification could be sent under different scenarios: a branch was created, a checkin had been done... I think it can be a good starting point for you!
  4. Blank page bug !

    Hi Sam, this could be an error in a GUI-related configuration file with corrupt (or inconsisten) content. This could happen, for example, if the configuration file has been edited by hand. Keeping in mind that there are quite a lot of configuration files (branch explorer configuration, issue trackers configuration, workspaces...), so, in my opinion, the easiest -and quickest- way to check if a corrupt file is the cause of your issue is following these steps. First of all, make sure that you don't have any pending changes on any of your workspaces: you can do so using the cli, you can find the full documentation here https://www.plasticscm.com/documentation/cli/plastic-scm-version-control-cli-guide.shtml. Plus, you can do with the command client almost anything you can do with the GUI, if at any time it is not available. Look for the "cm add" and "cm ci" commands. Let's start: Go to your personal Plastic SCM client preferences folder, where the configuration files are stored. It should be, for Windows, %HOMEPATH%\AppData\Local\plastic4 (usually C:\Users\<your_user>\AppData\Local\plastic4) Do a full backup of the plastic4 directory contents to other directory (your Desktop, for example). Delete all of the plastic4 directory contents. Open the Plastic SCM GUI. It will prompt you to the server configuration window. Just enter your server address, click connect, and then enter your credentials (if any). Then, you'll be prompted to the welcome window. Click the tab "Join an existing project", choose the repository you usually work with, and for the workspace path on disk, just choose an existing one. This way, the client will not need to download anything from the server. Add the rest of the workspaces you had from "Workspaces > Create new workspace", choosing the path of the already existing workspace. For every workspace, go to the Items view and click "Update workspace". Check if the "blank page" behavior you were facing before occurs again (it should not; all of the configuration files we're using are new!) If it does happen, I'd need to take a look at your Plastic SCM client logs. You can configure the plastic.exe logging following this guide https://www.plasticscm.com/documentation/technical-articles/kb-enabling-logging-for-plastic-scm-part-i.html. If you had any issue tracker configured, you should configure it again too.
  5. how to diff on console to stdout

    I wrote this tiny script and it works. Little hacky, but works. import sys from subprocess import Popen, PIPE _difftool = "C:\\Program Files (x86)\\GnuWin32\\bin\\diff.exe" def main(): f = open("C:\\Users\\sergio\\Desktop\\diff_output.txt", "w") source = sys.argv[1] destination = sys.argv[2] p = Popen([_difftool, source, destination], stdout=PIPE) out, err = p.communicate() # Ugly 'replace', p.communicate is not beautiful f.write(str(out).replace("\\r\\n", "\n")) f.close() sys.exit(0) if __name__ == "__main__": main() I tried to redirect the stdout of the difftools without success. And, it seems that difftools always exists with code 1, indicating some kind of error. In the first place I thought that was the cause of cm not being able to show the output, as it might be considering a non 0 exit code as an irrecuperable error, but it didn't show my Python's stdout either, so
  6. how to diff on console to stdout

    You're completely right, nothing shows up. If I had your problem I'd probably write a small Python script that calls diff and recolects the stdout, writing it were needed. Then I'd set that script as the diff tool in Plastic, but I understand that this approach is not the best solution to your problem :/
  7. how to diff on console to stdout

    What diff tool are you trying to use in Windows? I'm actually curious if can configure it...
  8. how to diff on console to stdout

    I don't know if this is going to help you, but after a little tweaking this is what I got. I use GTKPlastic in Ubuntu 14.04. I'll write it entirely (regarding that you know how to set up other diff tools) in case somebody, someday, find this useful too. It seems that there is no way to make the integrated diff tool (mergetool) to show the result using stdout, as it is heavily focused as a GUI utility. However, you can set any other text differences tool to work with plastic and the 'cm diff' command should use it. In the following example, I'll use the 'diff' command installed by default in many GNU/Linux flavours (as well as OS X I think). First of all, we must set PlasticSCM to use other diff tool. You'll find that setting under Preferences > Diff Tools (At least in MacPlastic and GTKPlastic). I'll set up diff clicking on "Add" and write the command that will be executed to perform a diff. There're some useful keywords, but I'll only use two: @sourcefile and @destinationfile, which will be replaced with the full path of the files we're going to compare. So this is the final command: diff @sourcefile @destinationfile You can set it to run only when you're comparing two files with a specific file extension, but in any case, we have to do something very important: change the order of the command. It seems that Plastic chooses the first diff tool that matches the kind of file or extension to diff. $text represents ALL text files, so if we want our custom command to be chosen, it must be the first in the list. Now it's the turn to test it! In my wkspaces I have one named Redburger with some Android code. I'll compare a *.java (text) file form the changeset 10 with the same file on changeset 9. cm diff rev:./LoginActivity.java#cs:10 rev:./LoginActivity.java#cs:9 Looks good right? I hope you'll find this useful. Diff is not the mightiest tool, but this proofs you can configure any tool you want to show differences though stdout
  9. Ubuntu 14.04 license issue

    Try to stop the server before touching the license file, and make sure you're downloading the correct one (and not a extended trial, which I downloaded for the first time facing the same issue ). First remove /opt/plasticscm5/server/plasticd.lic and then copy the downloaded lic. sudo plasticsd stop sudo rm /opt/plasticscm5/plasticd.lic sudo rm /opt/plasticscm5/plasticd.token.lic sudo cp /<ยทยทยท>/plasticd.lic . sudo plasticsd start Configure your client again if you want (just in case...?) and see what the following command says. cm li
  10. Remove from your /etc/apt/sources.list the alternative repository, if you added PlasticSCM-latest is not necessary (as you can read here): # Alternative: PlasticSCM-stable repository (This one can be setup **instead of** PlasticSCM-latest) The error 404 you're getting is because of this anyway: deb https://www.plasticscm.com/plasticrepo/plasticscm-stable/Ubuntu_14.01/ ./ Let me know if you could finally install Plastic
  11. plasticDrive doesn't launch

    To enable Plastic Drive try this steps (I recommend to uninstall Dokan first, as the problem seems to be a failed installation). Install Dokan ============= 1. - Download the Dokan installer from here: http://dokan-dev.net/wp-content/uploads/DokanInstall_0.6.0.exe 2. - If you are using Windows 8 / 8.1 you must install Dokan using the compatibility mode. You'll find it under File Properties / Compatibility. I have been able to install Dokan in Windows 8.1 machines setting the compatibility mode to Windows 7. If it helps, I made the change available for all users (see the attached screenshot http://imgur.com/No07dRT) 3. - Apply the change and run the EXE. 3. - Once Dokan is successfuly installed, reboot your PC. Enable the GUI ============== 1. - Stop the Plastic GUI (if it's open) closing its window. 2. - Edit the guiclient.conf file. It can be found under C:\Users\<username>\AppData\Local\plastic4 3. - Change the value of ShowMountPlasticDrive to true (line 37). 4. - Start the Plastic GUI. Mount a changeset ================= 1. - Go to your branch explorer. 2. - Select the desired changeset. 3. - Right click on it and select "Mount this changeset in Plastic Drive" After a few seconds, a new File Explorer window should appear with the contents of the changeset mounted in a virtual drive. You can unmount this drive right clicking the blue Plastic logo in the system tray. I'll recommend you to check your user permissions in those machines too :/ Good luck!