Is there a way to see the size of files in Plastic Cloud Edition? - plasticscm

I am trying to do an audit of the files I have in Plastic Cloud to see if there's anything in there that is hogging up space that we don't need in there, and I'm not sure exactly how to do that. What I have in my local workspace is not the same as what's in the cloud (because of ignore lists, if I'm understanding correctly?) so is there any way I can view what's in the cloud, or am I thinking about this all the wrong way?

The working copy downloaded in your machine is just the last version of the project, but the cloud storage includes all the history of the project (every previous revision for each file in different branches...)
From the branch explorer, you can right-click any changeset and select "Browse repository in this changeset". This way, you can check the tree of this specific changeset (including file paths and file sizes).
There is a recent feature that allows you to arrchive old file revisions in the cloud and this way, reduce the database usage. Please check: https://forum.plasticscm.com/topic/21799-trimming-to-reduce-size-of-the-database/?do=findComment&comment=45397

Related

Does PlasticsCM apply a read-only tag on client files?

I'm currently using Perforce for source control, the files on my workstation in the source controlled workspace are tagged with read-only, Perforce uses this tag to help manage which file was checked-out. and Unreal Engine editor, takes advantage of that tag, and lets me know when certain file need to be checked out, I value this very much because sometimes you can be working on one asset, and affect many files without realizing it.
We also use Google drive with the Filestream client. This mounts a g:/ drive on my workstation that I put all of my work project folders, not just code, but everything day to day work stuff.
This setup works great for everything, except... Google drive does not support "read-only" tags and makes using perforce more inconvenient, having to reconcile the project, or manually check files out( I am used to it happening automatically).
Now for my question about PlasticSCM... I might consider making the switch, but I've never used PlasticSCM, would someone be able to tell me if it uses the read-only file tag so that I could have my working source folder on the google drive mount g: ?
Many thanks and appreciation.
If you decide to use Plastic SCM (or any other SCM), I don't fully understand why you plan to use it at the same time with Google Drive.
You can use a Plastic workspace from where you can checkin your changes to a cloud repository. Then other members of your team can create a local workspace pointing to the same repo and this way, they can be up to date with your last changes in the project.
Anyway, answering to your specific question:
Plastic SCM by default doesn't set local files are read-only in your workspace.
You can still manually enable this workflow with the following preference:

TFS - Versioning file in a drop folder

We currently use TFS 2010 for controlling some of our .NET projects.
I'd like to know whether it's possible to provide some kind of versioning within TFS for a specific folder on a network share for example.
The idea being is to control release packages (zips) for every release we do. As this bit is done by some other person (not technical and he doesn't use Visual Studio or any tech tool), it'd be great to streamline the process of versioning the zip files for every release.
Technically speaking:
We've setup this folder \servername\releasezips and every time I drop a file named release.zip, it would automatically commit (push) this file to the TFS server (no comments needed) and furthermore, once the file contents change (meaning that someone dropped another version of the file in there), the system would again push the file to TFS, but with a following version.
Is this possible somehow? I've seen somewhere that I could programatically have some extra control over TFS, using REST API.
Thanks in advance!
Thanks for your tips, Daniel and PatrickLu-MSFT.
As I said, I did want something straighforward, some kind of control similar to what box.com provides, where you associate a local folder on your machine with the cloud. So, once you drop files in the local folder, the small box client synchronizes it along with the cloud. If access the box.com, I can see the different versions of that specific file.
So what I did was, I've created a small .NET app to monitor the folder and any new files dropped in there would get checked in to our TFS server, by using the tf command line (of course ignoring work items or comments).
So, progamatically within the .NET app, it builds up the tf required commands for processing and versioning the recently dropped files and therefore, executes them.
By the way, I could have used the Team Foundation API in order to do the same job, but it would demand way more effort.
Cheers
According to your description, you want to commit/check in files during the build/release pipeline.
It's not a recommend way to check-in generated build files and modify source code during a build pipeline. If you really want to do this, you could edit the build workspace files and use tf commands in custom activity and call the powershell eq:
cd $env:BUILD_SOURCESDIRECTORY
$TFFile = Get-Item "C:\Program Files (x86)\Microsoft Visual Studio 1x.0\Common7\IDE\TF.exe"
$tfOutput = [string]( & $TFFile.FullName checkin /noprompt /override:"***NO_CI*** New version is $newVersion." /comment:"***NO_CI*** New version is $newVersion." 2>&1)
Another way is installing TFS Power Tool and use the Windows PowerShell Cmdlets to check in the files. Refer to this link for more details: PowerShell and TFS: The Basics and Beyond
For version the dropped files, you could take a look this similar question: TFS Build Copy to Versioned Folder
Basically, you have to customize build definition with custom activity and based on build.buildnumber variable to generate/create .zip file.

Monitoring files on a shared drive and auto-check in to TFS

We need to monitor files in a share drive and check in file changes (new files or additions/deletions to existing files) to Team Foundation Server. Is it possible to map a TFS path to the shared drive and accomplish this ?
First,TFS is able to work with network/shared drivers. You could also create a workspace on the drive and mapped to TFS. You also be able to get latest and do some modification, then check in files.
So it's the same as monitoring files on a local drive and auto-check in to TFS. The most concern is the "auto-check in" operation, how would this be achieved. For example when you edit a file on the workspace in share drive, when would you check in files, after edit a character or a line, it's hard to judge when you finished the modification.
Actually if you are working on local workspace, your demand is by designed. When you had been modified externally VS or directly on files, TFS automatically checked them out without you having to do anything. The changes are added as a "pending change" status.
Lately you could check in the projects in the normal way and save the external modifications.
Certainly, you could also use tf command or TFS API to control the check-in operation.

TFS: Is is possible to transfer all checked out files from one user to another?

I am developer and work with TFS for a while but never have the responsibility of TFS admin. We have a user that was let go and now his userId has been revoked so we cannot use his id anymore.
He has so many files checked out in TFS and a lot of stuff done, we don't want to lose these checked out files if possible. Is there a way to transfer all his checked out files to me or someone else? Or what is the best way to recover these files?
NOTE: we still have his laptop with all the files, we just cant login to it with his username.
Thank you for your help in advanced
Download TFS Sidekicks (get the right version for your TFS)
They have a Visual Studio Add-in if that is what you are using as your IDE
Backup his files that you want to keep
Use the Workspace Sidekick of TFS Sidekicks to delete his workspace(s)
(this won't delete his files).
This will release any exclusive locks that he has effectively undoing all his checkouts.
You can also use the Status Sidekick to see what files he has checked out.
Get latest source and copy his files over yours
If you are using TFS2012 or later, you can use a 'local' workspace and simply copy his files over. Team Explorer will create your pending changes for you. If you are using a 'server' workspace or a version of TFS prior to 2012, you will need to full check-out everything and THEN copy his files over.
It's not a great solution but it should work for you
The changes to the developer's files that are checked out will be stored locally on the developers machine (specifically in their workspace directories) - transferring "check out status" would seemingly not accomplish what you hope.
You would need to obtain access to the developer's workspace (perhaps via an admin account on the dev's machine), copy out all the contents to a new workspace you own to consolidate differences between "source" and "new workspace".
Once you've copied the developer's workspace to a new workspace you own, you can simply compare "source" to "workspace" to find all the changed files and which are needed vs. not needed. Note, this should be done sooner rather than later as the longer you wait the more differences there will be between the two, making it harder to identify what is actually needed.

TFS out of sync between local and remote - how to "re-sync"?

I have a Project on CodePlex which is using TFS and I am using the TFS Plugin for Visual Studio. Now I have copied this project and worked on another PC without TFS and done some refactoring. Foolishly, I have then just used copy/paste and manual text editing to merge my changes, expecting that TFS just picks up the changes.
Apparantly, that is not the case.
Here is a screenshot of my local directory:
My Local TFS http://img259.imageshack.us/img259/2897/tfslocal.jpg
Notice how some files are missing the lock symbol - those are missing. If you look at the current TFS Tree on Codeplex, there are some files which do not exist locally anymore, i.e. WikiPlexExtensions.cs in the main folder.
Is there any way to easily tell TFS to compare my local to the remote repository and pick up the changes? I could re-add the local files using "Exclude from local project" and re-adding them, and I could create the "deleted" files as empty files just to delete them, but if I can avoid the manual messing around that would be good as well :)
The easiest way is to exploit VS 2008's "online" feature. Basically you want to set your solution offline, then bring it online while connected to the proper Codeplex server. TFS should figure out the rest.
Feature overview: http://msdn.microsoft.com/en-us/teamsystem/bb898913.aspx
Tweaking the settings by hand: http://blogs.msdn.com/benryan/archive/2008/07/09/using-tfs-2008-power-tools-to-modify-server-s-offline-state.aspx
To compare local and server folders, you can check out TFS Power Tool. After installing it, you can bring up the source control explorer, right click on the server folder and then select 'Compare'. Folder difference window will display the differences. You can also right click on the differences to see available commands such as 'Get Latest' to update your local folder for example. Check out Bryan Harry's blog post on the power tool
I don't think there is an easy fix... What I've done in the past is back up those files that I have edited, then do a "Get Latest Version..." for the files I edited. This should change the files back to being read-only etc... Now, check out the files the regular way and paste the backups you had into the checked out files. Obviously this really only works when there are a couple of files you have edited.
TFS (in Visual Studio) has a "Reconcile" command for this, see Microsoft documentation, or this answer with steps.
BTW: This command may not haven been existing at time of original question, but this question came first when I was searching.

Resources