If you want to publish only checked in changes while you have uncommitted development, don't use your development workspace for publishing. Instead, create a separate workspace for that purpose. Perform a get latest in the publishing workspace so that it includes only the latest checked in objects and then publish from there. A separate build box is often used for this purpose in larger development environments.
A new workspace for publishing can be created using TFS Source Control Explorer. Select "Workspaces..." from the Workspace drop down and click add. In the working folder mapping dialog, provide a mnemonic workspace name, specify the same source control folder you use for development but specify a new empty local folder. Click yes when prompted to get the latest from source control. This new workspace will contain only the latest checked-in objects.
These development and publishing workspaces share the same source control path but are independent due to the different local folders and files. Be mindful to make changes only in the development workspace (and get latest to see other team members checked-in changes) and use only get latest to update the deployment workspace.