Merge branch 'file_locks' into 'master'
File Lock Fixes https://gitlab.com/gitlab-org/gitlab-ee/issues/497 - [x] Data layer(tables, models, migrations) - [x] Checks on git push - [x] Author should be able to push if one owns the lock - [x] Path matcher with tokenizer and memoization - [x] Show lock status icons by files and folders - [x] UI: mockup buttons for locking files, folders - [x] UI: Locking files - [x] UI: Locking folders - [x] Permissions check everywhere - [x] Add page to list all locked files/dirs to get overview in case people forget to unlock - [x] Refactor `lock_file_button` and `lock_file_link` - [x] Testing Git LFS - [x] Get rid of code duplication in pre-receive hook - [x] Test case: I want to unlock file if I'm a developer and I'm not an author of lock - [x] Make it EE option - [x] Specs and spinach - [x] TODOs in the code Can be moved to the next iteration: - [ ] Duplicate lock checks in the service since pre-receive hook does not work for UI (according to Douwe) - [ ] timeago in the lock icon tooltip. It's not working out of the box. - [ ] Ajax load bar on click "Lock/Unlock" in the file tree - [ ] Nested locking UI. If we look at file and it's locked because of parent we should show it in tooltip. **Screenshots** ![joxi_screenshot_1466188707474](/uploads/623e65c9a246b07c9786fd8babdb2dd8/joxi_screenshot_1466188707474.png)![joxi_screenshot_1466188735083](/uploads/4588eff352ee544de5bb5727d501a2cc/joxi_screenshot_1466188735083.png)![joxi_screenshot_1466188758950](/uploads/dee7b342c7825a79ed1629535eced5ed/joxi_screenshot_1466188758950.png) Related info: Douwe wrote: ```For a next iteration, we need to think about nested locking more. If user A has locked lib/, user B shouldn't be able to lock lib/foo.rb since that falls under lib/. Similarly, if user A has locked lib/foo.rb, user B shouldn't be able to lock lib/, because part of that directory is locked by someone else already.``` See merge request !440
Showing
app/models/path_lock.rb
0 → 100644
spec/factories/path_locks.rb
0 → 100644
Please register or sign in to comment