Wrap Rugged-exceptions in Gitlab::Git::Repository#write_ref
Why?
When we migrate things to Gitaly, we shouldn't have handle Rugged::*Exception in app/models/.
Also moved shell_write_ref and rugged_write_ref into private
Does this MR meet the acceptance criteria?
- 
Changelog entry added, if necessary 
- 
Documentation created/updated 
- 
API support added 
- 
Tests added for this feature/bug 
- Review
- 
Has been reviewed by UX 
- 
Has been reviewed by Frontend 
- 
Has been reviewed by Backend 
- 
Has been reviewed by Database 
 
- 
- 
Conform by the merge request performance guides 
- 
Conform by the style guides 
- 
Squashed related commits together 
- 
Internationalization required/considered 
What are the relevant issue numbers?
Edited  by Kim Carlbäcker