Flatten the directory hierarchy while there is only one directory descendant
In some languages, especially java, the directory structure reflects the package structure.This means that using the file tree browser to reach the directories that matter you have to click a lot of directories containing only another subdirectory.
This merge request tries to enhance this by showing and providing the link to the first directory that doesn't contain only one directory.
See also [this feature request](http://feedback.gitlab.com/forums/176466-general/suggestions/6236769-jump-forward-to-the-first-folder-that-has-more-tha)
This is very similar to what [GitHub does](https://github.com/blog/1877-folder-jumping), but I don't think graying out the empty directories is really necessary.
Screenshots: [Before](https://gitlab.com/uploads/marmis85/gitlab-ce/b683a0000f/before.png) - [After](https://gitlab.com/uploads/marmis85/gitlab-ce/a23725a1c1/after.png)
I'm actually very new at ruby, rails, haml, and almost everything involved in Gitlab's development...
From what I could understand, when we render each directory item in the list we only have the data structure representing the item but not his descendants.
To iterate through the hierarchy I call Gitlab::Git:Tree.where() but I'm not sure if this is the most efficient way.
I also considered making every directory a clickable link, but I tried that and in the end it wasn't very useful and reduced the click target for the most useful directory.
See merge request !275
Update the `#first_line_in_markdown` method so that the first line of
parsed text is displayed more reliably, and the continuation indicators
("...") are displayed in all cases where the note is truncated.
Also add Rspec tests for `EventsHelper#event_note`.
Fix ambiguous sha problem with mentioned commit
Before: write in database only 6 chars of commit sha. This cause to `Ambiguous SHA1 prefix` exception.
- [x] write full commit sha in db.
- [x] Standardise usage of sha truncation: 8 characters everywhere.
- [x] prevent exception when ambiguous sha requested in markdown
Fixes#1644
See merge request !1171
Bug with apostrophe when at mentioning users
This fixes the situation where mentioning user with apostrophe at the end causes a link to issue 39 if the project has that issue, so `@marin` would look like `@marin's`.
Fixes#1034
See merge request !1165
* dont try to build links for anchors like `#title-anchor`
* dont build relative url for project with empty repo
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>