Confluence version history - versioning

It's nice to have a version history in Confluence. However a new version has been created every time when the document is edited and saved. I'm looking more for a "release" history. Assume I have version 1.0 of my document/page. Then I edit and save the page a couple of times before I'm ready with "release" 1.1. I need something to link a version to a release number and then have an automated release history.
Is there a way to do do something like that in Confluence?

I guess Scroll Versions plugin from K15t Software could be one possible solution for versioning and release management of wiki pages within Confluence. https://marketplace.atlassian.com/plugins/com.k15t.scroll.scroll-versions
P.S. I know it is tad old question, but I think someone else may need this info.

A method I have seen used is to attach a file to a page, change the document and upload with the same name multiple times, then change the link on the page when the version changes.
Usually a link to an attached document always references the highest version like this:
[^list.docx]
[ and ] mark the start and end of the link
^ to the right of [ refers to an attachment on the current page
and the rest is the name of the attachment
which resolves to a hyperlink of:
http://wiki.server.name/download/attachments/464233765/list.docx
From the page the full url is more specific:
http://wiki.server.name/download/attachments/464233765/list.docx?version=1&modificationDate=1406619789890
Refer to Tools > Attachments for a list of file version numbers.
Edit the page.
Create a link to the 'next' version with appropriate link text.
[list.docx V2.1|///download/attachments/464233765/list.docx?version=6]
[list.docx V3.0|///download/attachments/464233765/list.docx?version=9]
[list.docx V3.1|///download/attachments/464233765/list.docx?version=11]

As you wrote Confluence always creates a new version once an existing attachment is uploaded with the same file name as displayed on the attachment view.
Existing files will be kept with the name 'Version x', where the value
of 'x' increments with each upload of an attachment with the same file
name.
Source:
https://confluence.atlassian.com/display/DOC/Attachment+Versions
This cannot be changed by configuration in Confluence.
However you can try Arsenale Lockpoint, which is a Confluence Add-on.
Arsenale® Lockpoint™ is the enterprise standard for checkout, checkin
and controlled versioning of Confluence attachments...
Source: https://marketplace.atlassian.com/plugins/com.arsenale.plugins.lockpoint
Arsenale Lockpoint Documentation
EDIT
I have just installed and tested Arsenale Lockpoint and could not find the feature you are looking for
I don't know of any other add-on that would meet your requirements
Therefore i would recommend to edit the file locally and upload it only if you want a new version (release)

A simple alternative to other answers is to use change comments.
When editing page there is an input field next to save button at the bottom. This field has a placeholder "*What did you change?" and its content is shown in page history.
So you can edit page several times and when you want to "release" the version, you can fill the comment with release version. This way you can see all page versions in page history but you are able to easily identify the releases.
See Confluence documentation

Related

How to create a new culture version for multiple pages in Kentico at one go?

I am configuring a new language version on the existing Kentico 12 website. I can easily create a new culture version of a page by copying content from the already existing language, but a problem is that this feature is available at a page level only what in my case, having hundreds of pages, will results to many hours of manual efforts. Ideally, I would like to select multiple pages and create the new culture version for all of them at once.
Could you please advise me on how I can optimise this task?
You would be able to do it in 2 steps with the help of Translations application.
First, multiple (or all) pages can be submitted for translation via Listing view
Next, select here source and destination languages to copy pages and click "Translate":
Then you will see pages with "Ready for translation" status
Next, go to the "Translations" application and edit the submission:
And finally, click "Export all to ZIP", this will download a ZIP file. Then click "Import all from ZIP" and use the just downloaded ZIP file. Then click "Process translations" and that's it!

Adding a new page to a GitHub wiki using Gollum

Months back I started populating a wiki for someone else's GitHub repo.
I put instructions here.
Yesterday I decided I wanted to add a new page. Nobody has modified the wiki in the meanwhile so I figured I can just repeat those instructions from...
Make the edits:
:
So I run gollum from /path/to/MathBox/mathbox.wiki/ (which currently contains a Home.md and Slides.md which correctly reflects the wiki as is), launch my browser at localhost:4567, and add a new page by adding [[foo]] to the homepage, saving it, clicking it.
Which opens it up as blank page in edit mode, and I then add some dummy text, save, quit browser, quit gollum.
But the files in the current folder haven't changed. Home.md should have an extra line, and there should be a new Foo.md file containing my dummy text. But nothing!
And even stranger, running Gollum again shows the wiki in its new state. So my changes are getting recorded somewhere. But as it is not in the working folder, GitHub Desktop doesn't grok that I have made modifications.
What's going wrong here?
Gollum reads and stores files on a git repository, it doesn't read from uncommitted files stored in the current directory.
When you are creating a new file using its internal editor it will create a file with the content and will commit it to the local repository.
But when you create a file with an external editor, you have to commit it so gollum can read it from a a git repository.

how to make mavensmate sync a flow from salesforce platform to sublime

I created a flow from the process builder , and I want to sync it locally.
When I looked at the project from mavensmate , I couldn't find the file which is named .flow
This is my first question in stackoverflow , I'm sorry about my poor english , hope you can understand what I described . who could give me some suggestions?
Thanks!
First, you need to update your local SF project metadata. For that, in SublimeText, go to MavensMate menu -> Project -> Edit Project. It should open the project metadata tab in your browser. Click the "Refresh" button and then choose the flow that you need in your project tree. Click "Update project". After that you should be able to find the flow in your project folder.
Go into Mavensmate's settings.
Add ".flow" to the list of extensions under "SALESFORCE FILE EXTENSIONS (MM_APEX_FILE_EXTENSIONS)" if it isn't there already.
You might want to update "SALESFORCE API VERSION (MM_API_VERSION)" to the latest as well.
If your still having problems with that, you might want to check the Flow names including the version numbers. In my case, Mavensmate shows Versions 1, 2, 3, and has no number after the current (active) version. The file on my hard drive is labelled as version 4, so the names don't match up.
To fix this, you'll want to deactivate the processes and update your project.

Working With A Codename One Project In Git/SVN version control

We are trying to work on a Codename One project using git version control.
When I pull the project from git, the files (modified and newly added theme res files) are updated but they don't appear in the theme.
My changes aren't reflected when I try to run the project, how to refresh the project?
I tried to build/clean, refresh the cn1lib too but made no progress.
Thankyou shai, i uncheck the xml team mode but that doesnt make any difference.. you gave the link (https://www.codenameone.com/team.html), what is this for?? sorry i didn't quite get it.
And the solution isnt that clear. what do you mean by checking the res directory...
Let me clear my problem here.. when my team member adds a form (eg main form) in the gui builder, it get pulled from git in my project. there r 2 files main.ui and main file but when i open my res file or gui builder, the main form is not there.
This is actually triggered by a feature specifically designed for working with a team in version controlled environments. You can get this to work by unchecking File->XML Team Mode in the designer but that would "work around" this feature: http://www.codenameone.com/blog/teamwork-and-other-things.html
The solution would be to checkin the res directory, when it exists opening the res file refers to that instead of to the theme file. This allows your team to edit that directory together and avoid conflicts that will arise when sharing the binary res file.

Hiding the word "joomla" from a script in contact form

Whenever i create a contact form in my Joomla! 3.3.6, some script appears in the the page's HTML code that contains many words Joomla in it. I'd like to change those Joomla words and replace them with another words (i.e. Foo) for some security issue. I'd like to know whether or not i'm able to do so and how.
That script is:
<script>(function(){var strings={"JLIB_FORM_FIELD_INVALID":"\u0641\u06cc\u0644\u062f \u0646\u0627\u0645\u0639\u062a\u0628\u0631:&#160"};if(typeof Joomla=='undefined'){Joomla={};Joomla.JText=strings;}
else{Joomla.JText.load(strings);}})();</script>
I have no idea whether a plugin or an extension creates it or not.
Thank you
Regards
This script seems to be translating some text required for the form to use in its javascript, eg validation messages. It does this using a javascript version of JText, which is part of core Joomla. There is some info on how that works here. Weirdly, there seems to be little information in the official Joomla documentation about it.
The main JText function it is calling appears here: media/system/js/core.js
I'm sure it would be possible to write a plug-in to remove this script before the page is rendered and then to translate any untranslated text with your own scripts. However, I'm not sure I see any security benefit in doing this so it seems a waste of time.
Ultimately, someone sniffing a site for what it is built in is far more likely to see if core files exist by going direct to places like media/system/js/core.js, rather than to scan the code for the word "Joomla" - which would trigger a lot of false-positives (any site which just mentions Joomla) and negatives (any page which doesn't have a form on it). It also does not reveal the version of Joomla, which is the info a hacker would more likely be after.
I think you have to search for the script (i.e via Notepad++) in the whole directory. It must be a plugin for the contact form that has some inline script in it.
also do you use any special third party plugin or so? that might be the source of it.
PS: also i had some similar experience, i don't know exactly how i got rid of those words, but like you, i wanted to do that to hide the fact that i'm using joomla for security.
Its actually Joomla who add this, from the file: Joomlainstall/libraries/joomla/document/html/renderer/head.php
And load it globaly from:
Joomlainstall/libraries/cms/html/formbehavior.php
The developer ad that code by using the function, JText, for an example:
JText::_( 'COM_CONTACT_EMAIL_FORM' )
In my case it was the plugin ContactUs Form who add the javascript. If JText is not used, it is not loaded. If I disabled the plugin, the javascript was then not loaded. If you have that plugin enabled, my be try an other contact form?
For security reson it is bad programming by the developer off Joomla, for sure.

Resources