AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

Tryam, рдирдорд╕реНрдХрд╛рд░!

рдо BitBucket рдорд╛рд░реНрдлрдд GitLab рд░ AppCenter рдПрдХреАрдХрд░рдг рд╕реЗрдЯрдЕрдк рдЧрд░реНрдиреЗ рдореЗрд░реЛ рдЕрдиреБрднрд╡рдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреБред

Xamarin рдорд╛ рдХреНрд░рд╕-рдкреНрд▓реЗрдЯрдлрд░реНрдо рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ UI рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реБрд░реБрд╡рд╛рдд рд╕реЗрдЯрдЕрдк рдЧрд░реНрджрд╛ рдпрд╕реНрддреЛ рдПрдХреАрдХрд░рдгрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рджреЗрдЦрд╛ рдкрд░реНтАНрдпреЛред рдХрдЯ рддрд▓ рд╡рд┐рд╕реНрддреГрдд рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓!

* рдпрджрд┐ рдЬрдирддрд╛рдХреЛ рд░реБрдЪрд┐ рдЫ рднрдиреЗ рдо рдХреНрд░рд╕-рдкреНрд▓реЗрдЯрдлрд░реНрдо рд╕рд░реНрддрд╣рд░реВрдорд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд UI рдкрд░реАрдХреНрд╖рдгрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЫреБрдЯреНрдЯреИ рд▓реЗрдЦ рдмрдирд╛рдЙрдиреЗрдЫреБред

рдореИрд▓реЗ рдПрдЙрдЯрд╛ рдпрд╕реНрддреЛ рд╕рд╛рдордЧреНрд░реА рдорд╛рддреНрд░ рдЦрдиреЗрдВ рд▓реЗрдЦред рддреНрдпрд╕реИрд▓реЗ, рдореЗрд░реЛ рд▓реЗрдЦрд▓реЗ рдХрд╕реИрд▓рд╛рдИ рдорджреНрджрдд рдЧрд░реНрди рд╕рдХреНрдЫред

рдЙрджреНрджреЗрд╢реНрдп: рд╣рд╛рдореНрд░реЛ рдЯреЛрд▓реАрд▓реЗ GitLab рд▓рд╛рдИ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реАрдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдХреЛ рдХреБрд░рд╛рд▓рд╛рдИ рдзреНрдпрд╛рдирдорд╛ рд░рд╛рдЦреЗрд░ AppCenter рдорд╛ UI рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реБрд░реБрд╡рд╛рдд рд╕реЗрдЯрдЕрдк рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рд╕рдорд╕реНрдпрд╛ рдпреЛ рдмрд╛рд╣рд┐рд░рд┐рдпреЛ рдХрд┐ AppCenter GitLab рд╕рдБрдЧ рд╕рд┐рдзреИ рдПрдХреАрдХреГрдд рдЧрд░реНрджреИрдиред BitBucket рдорд╛рд░реНрдлрдд рдмрд╛рдЗрдкрд╛рд╕ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЛ рд░реВрдк рдорд╛ рдЫрдиреЛрдЯ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред

рдЪрд░рдгрд╣рд░реВ

1. BitBucket рдорд╛ рдЦрд╛рд▓реА рднрдгреНрдбрд╛рд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдо рдпрд╕рд▓рд╛рдИ рдердк рд╡рд┐рд╡рд░рдгрдорд╛ рд╡рд░реНрдгрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рджреЗрдЦреНрджрд┐рди :)

2. GitLab рд╕реЗрдЯрдЕрдк рдЧрд░реНрджреИ

рд╣рд╛рдореАрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрд┐ рднрдгреНрдбрд╛рд░рдорд╛ рдкреБрд╢/рдорд░реНрдЬ рдЧрд░реНрджрд╛, рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдкрдирд┐ рдмрд┐рдЯрдмрдХреЗрдЯрдорд╛ рдЕрдкрд▓реЛрдб рд╣реБрдиреНрдЫрдиреНред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рдПрдХ рдзрд╛рд╡рдХ рдердкреНрдиреБрд╣реЛрд╕реН (рд╡рд╛ рдЕрд╡рд╕реНрдерд┐рдд .gitlab-ci.yml рдлрд╛рдЗрд▓ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрдиреБрд╣реЛрд╕реН)ред

рдкрд╣рд┐рд▓реЗ рд╣рд╛рдореА before_scripts рдЦрдгреНрдбрдорд╛ рдЖрджреЗрд╢рд╣рд░реВ рдердкреНрдЫреМрдВ

 - git config --global user.email "user@email"
 - git config --global user.name "username"

рддреНрдпрд╕рдкрдЫрд┐ рдЗрдЪреНрдЫрд┐рдд рдЪрд░рдгрдорд╛ рдирд┐рдореНрди рдЖрджреЗрд╢ рдердкреНрдиреБрд╣реЛрд╕реН:

- git push --mirror https://username:[email protected]/username/projectname.git

рдореЗрд░реЛ рдорд╛рдорд▓рд╛ рдорд╛, рдпреЛ рдореИрд▓реЗ рдкрд╛рдПрдХреЛ рдлрд╛рдЗрд▓ рд╣реЛ:

before_script:
 - git config --global user.email "user@email"
 - git config --global user.name "username"

stages:
  - mirror
mirror:
  stage: mirror
  script:
    - git push --mirror https://****:*****@bitbucket.org/****/testapp.git

рд╣рд╛рдореА рдирд┐рд░реНрдорд╛рдг рд╕реБрд░реБ рдЧрд░реНрдЫреМрдВ, рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐ рд╣рд╛рдореНрд░рд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ/рдлрд╛рдЗрд▓рд╣рд░реВ рдмрд┐рдЯрдмрдХреЗрдЯрдорд╛ рдЫрдиреНред
* рдЕрднреНрдпрд╛рд╕рд▓реЗ рджреЗрдЦрд╛рдПрдХреЛ рдЬрд╕реНрддреИ, SSH рдХреБрдЮреНрдЬреАрд╣рд░реВ рд╕реЗрдЯрдЕрдк рдЧрд░реНрди рд╡реИрдХрд▓реНрдкрд┐рдХ рдЫред рддрд░, рдХреЗрд╡рд▓ рдХреЗрд╕рдорд╛, рдо рддрд▓ SSH рдорд╛рд░реНрдлрдд рдЬрдбрд╛рди рд╕реЗрдЯрдЕрдк рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗрдЫреБ

SSH рдорд╛рд░реНрдлрдд рдЬрдбрд╛рди

рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ SSH рдХреБрдЮреНрдЬреА рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпрд╕рдмрд╛рд░реЗ рдзреЗрд░реИ рд▓реЗрдЦ рд▓реЗрдЦрд┐рдПрдХрд╛ рдЫрдиреН ред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВ рд╣реЗрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдпрд╣рд╛рдБ.
рдЙрддреНрдкрдиреНрди рдХреБрдЮреНрдЬреАрд╣рд░реВ рдпрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ:
AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдердк рдЧреЛрдкреНрдп рдХреБрдЮреНрдЬреА GitLab рдорд╛ рдЪрд░рдХреЛ рд░реВрдкрдорд╛ рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╕реЗрдЯрд┐рдВрдЧреНрд╕> CI/CD> рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реНред рддрдкрд╛рдИрдВрд▓реЗ рдЧреЛрдкреНрдп рдХреБрдЮреНрдЬреА рдмрдЪрдд рдЧрд░реНрдиреБрднрдПрдХреЛ рдлрд╛рдЗрд▓рдХреЛ рд╕рдмреИ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВ рдердкреНрдиреБрд╣реЛрд╕реНред рдЪрд▓реЛ SSH_PRIVATE_KEY рд▓рд╛рдИ рдХрд▓ рдЧрд░реМрдВред
* рдпреЛ рдлрд╛рдЗрд▓, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рдлрд╛рдЗрд▓рдХреЛ рд╡рд┐рдкрд░реАрдд, рд╡рд┐рд╕реНрддрд╛рд░ рд╣реБрдиреЗрдЫреИрди
AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рд░рд╛рдореНрд░реЛ, рдЕрд░реНрдХреЛ рддрдкрд╛рдИрдВрд▓реЗ BitBucket рдорд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпреЛ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐, рднрдгреНрдбрд╛рд░ рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН рд░ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ > рдкрд╣реБрдБрдЪ рдХреБрдЮреНрдЬреАрд╣рд░реВрдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реНред

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдпрд╣рд╛рдБ рд╣рд╛рдореА Add Key рдорд╛ рдХреНрд▓рд┐рдХ рдЧрд░реНрдЫреМрдВ рд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдЮреНрдЬреА (рдПрдХреНрд╕рдЯреЗрдиреНрд╕рди .pub рд╕рдВрдЧ рдлрд╛рдЗрд▓) рдХреЛ рд╕рд╛рде рдлрд╛рдЗрд▓рдХреЛ рд╕рд╛рдордЧреНрд░реА рд╕рдореНрдорд┐рд▓рд┐рдд рдЧрд░реНрджрдЫреМрдВред

рдЕрд░реНрдХреЛ рдЪрд░рдг gitlab-runner рдорд╛ рдХреБрдЮреНрдЬреАрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╣реЛред рдпреА рдЖрджреЗрд╢рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рддрд░ рддрдкрд╛рдИрдВрдХреЛ рд╡рд┐рд╡рд░рдгрд╣рд░реВрдХрд╛ рд╕рд╛рде рддрд╛рд░рд╛рд╣рд░реВ рдмрджрд▓реНрдиреБрд╣реЛрд╕реН

image: timbru31/node-alpine-git:latest

stages:
  - mirror

before_script:
  - eval $(ssh-agent -s)
  - echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add - > /dev/null
  - mkdir -p ~/.ssh
  - chmod 700 ~/.ssh
  - ssh-keyscan bitbucket.org >> ~/.ssh/known_hosts
  - chmod 644 ~/.ssh/known_hosts
  - git config --global user.email "*****@***"
  - git config --global user.name "****"
  - ssh -T [email protected]

mirror:
  stage: mirror
  script:
    - git push --mirror https://****:****@bitbucket.org/*****/*****.git

3. AppCenter рд╕реЗрдЯрдЕрдк рдЧрд░реНрджреИ

рд╣рд╛рдореА AppCenter рдорд╛ рдирдпрд╛рдБ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдЫреМрдВред

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рднрд╛рд╖рд╛/рдкреНрд▓реЗрдЯрдлрд░реНрдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдЕрд░реНрдХреЛ, рдирдпрд╛рдБ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдХреЛ рдирд┐рд░реНрдорд╛рдг рдЦрдгреНрдбрдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реНред рддреНрдпрд╣рд╛рдБ рд╣рд╛рдореА BitBucket рд░ рдЪрд░рдг 1 рдорд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рднрдгреНрдбрд╛рд░ рдЪрдпрди рдЧрд░реНрдЫреМрдВред

рд░рд╛рдореНрд░реЛ, рдЕрдм рд╣рд╛рдореАрд▓реЗ рдирд┐рд░реНрдорд╛рдг рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпреЛ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐, рдЧрд┐рдпрд░ рдкреНрд░рддрд┐рдорд╛ рдлреЗрд▓рд╛ рдкрд╛рд░реНрдиреБрд╣реЛрд╕реН

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рд╕рд┐рджреНрдзрд╛рдиреНрддрдорд╛, рддреНрдпрд╣рд╛рдБ рд╕рдмреИ рдХреБрд░рд╛ рд╕рд╣рдЬ рдЫред рдПрдЙрдЯрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдЪрдпрди рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рдирд┐рд░реНрдорд╛рдг рдкрдЫрд┐ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд╕реБрд░реБрд╡рд╛рдд рд╕рдХреНрд╖рдо рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддрд┐рдиреАрд╣рд░реВ рд╕реНрд╡рддрдГ рд╕реБрд░реБ рд╣реБрдиреЗрдЫрдиреНред

рдореВрд▓рддрдГ, рддреНрдпреЛ рд╕рдмреИ рд╣реЛред рдпреЛ рд╕рд░рд▓ рд╕реБрдирд┐рдиреНрдЫ, рддрд░, рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдкрдорд╛, рд╕рдмреИ рдХреБрд░рд╛ рд╕рдЬрд┐рд▓реИ рд╕рдВрдЧ рдЬрд╛рдиреЗрдЫреИрдиред рддреНрдпрд╕рдХрд╛рд░рдг, рдо рдХрд╛рдо рдЧрд░реНрджрд╛ рдореИрд▓реЗ рд╕рд╛рдордирд╛ рдЧрд░реЗрдХрд╛ рдХреЗрд╣реА рддреНрд░реБрдЯрд┐рд╣рд░реВ рд╡рд░реНрдгрди рдЧрд░реНрдиреЗрдЫреБ:

'ssh-keygen' рдЖрдиреНрддрд░рд┐рдХ рд╡рд╛ рдмрд╛рд╣реНрдп рдЖрджреЗрд╢рдХреЛ рд░реВрдкрдорд╛ рдкрд╣рд┐рдЪрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫреИрдиред

рдпреЛ рдкрдирд┐ рд╣реБрдиреНрдЫ рдХрд┐рдирднрдиреЗ ssh-keygen.exe рдХреЛ рдмрд╛рдЯреЛ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░рд╣рд░реВрдорд╛ рдердкрд┐рдПрдХреЛ рдЫреИрдиред
рддреНрдпрд╣рд╛рдБ рджреБрдИ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдЫрдиреН: C:Program FilesGitusrbin рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░рд╣рд░реВрдорд╛ рдердкреНрдиреБрд╣реЛрд╕реН (рдореЗрд╕рд┐рди рд░рд┐рдмреБрдЯ рдЧрд░реЗрдкрдЫрд┐ рд▓рд╛рдЧреВ рд╣реБрдиреЗрдЫ), рд╡рд╛ рдпрд╕ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдмрд╛рдЯ рдХрдиреНрд╕реЛрд▓ рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реНред

AppCenter рдЧрд▓рдд BitBucket рдЦрд╛рддрд╛рдорд╛ рдЬрдбрд╛рди рднрдпреЛ?

рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ AppCenter рдмрд╛рдЯ рдЖрдлреНрдиреЛ BitBucket рдЦрд╛рддрд╛ рдЕрдирд▓рд┐рдВрдХ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рд╣рд╛рдореА рдЧрд▓рдд BitBucket рдЦрд╛рддрд╛рдорд╛ рд▓рдЧ рдЗрди рдЧрд░реНрдЫреМрдВ рд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╛рдЗрд▓рдорд╛ рдЬрд╛рдиреНрдЫреМрдВред

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдЕрд░реНрдХреЛ, рд╕реЗрдЯрд┐рдЩрд╣рд░реВ > рдкрд╣реБрдБрдЪ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди > OAuth рдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдЖрдлреНрдиреЛ рдЦрд╛рддрд╛ рдЕрдирд▓рд┐рдВрдХ рдЧрд░реНрди рд░рджреНрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХреНрд▓рд┐рдХ рдЧрд░реНрдиреБрд╣реЛрд╕реНред

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдпрд╕ рдкрдЫрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдЖрд╡рд╢реНрдпрдХ BitBucket рдЦрд╛рддрд╛рдХреЛ рд╕рд╛рде рд▓рдЧ рдЗрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред
* рдЕрдиреНрддрд┐рдо рдЙрдкрд╛рдпрдХреЛ рд░реВрдкрдорд╛, рддрдкрд╛рдЗрдБрдХреЛ рдмреНрд░рд╛рдЙрдЬрд░ рдХреНрдпрд╛рд╕ рдкрдирд┐ рдЦрд╛рд▓реА рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдЕрдм AppCenter рдорд╛ рдЬрд╛рдФрдВред рдмрд┐рд▓реНрдб рдЦрдгреНрдбрдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН, рдмрд┐рдЯрдмрдХреЗрдЯ рдЦрд╛рддрд╛ рд╡рд┐рдЪреНрдЫреЗрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХреНрд▓рд┐рдХ рдЧрд░реНрдиреБрд╣реЛрд╕реН

AppCenter рд░ GitLab рдПрдХреАрдХрд░рдг

рдЬрдм рдкреБрд░рд╛рдиреЛ рдЦрд╛рддрд╛ рдЕрдирд▓рд┐рдВрдХ рд╣реБрдиреНрдЫ, рд╣рд╛рдореА рдлреЗрд░рд┐ AppCenter рд▓рд┐рдВрдХ рдЧрд░реНрдЫреМрдВред рдЕрдм рдЗрдЪреНрдЫрд┐рдд рдЦрд╛рддрд╛рдорд╛ред

'eval' рд▓рд╛рдИ рдЖрдиреНрддрд░рд┐рдХ рд╡рд╛ рдмрд╛рд╣реНрдп рдЖрджреЗрд╢рдХреЛ рд░реВрдкрдорд╛ рдорд╛рдиреНрдпрддрд╛ рджрд┐рдЗрдПрдХреЛ рдЫреИрди

рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рдЖрджреЗрд╢рдХреЛ рд╕рдЯреНрдЯрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ

  - eval $(ssh-agent -s)

рдЯреЛрд▓реА:

  - ssh-agent

рдХрддрд┐рдкрдп рдЕрд╡рд╕реНрдерд╛рдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рдпрд╛ рдд C:Program FilesGitusrbinssh-agent.exe рдорд╛ рдкреВрд░рд╛ рдорд╛рд░реНрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫ, рд╡рд╛ рдпреЛ рдмрд╛рдЯреЛ рдореЗрд╕рд┐рдирдХреЛ рдкреНрд░рдгрд╛рд▓реА рдЪрд░рд╣рд░реВрдорд╛ рдердкреНрдиреБрд╣реЛрд╕реН рдЬрд╣рд╛рдБ рд░рдирд░ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫред

AppCenter Build рд▓реЗ рдкреБрд░рд╛рдиреЛ bitBucket рднрдгреНрдбрд╛рд░рдмрд╛рдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ рдирд┐рд░реНрдорд╛рдг рд╕реБрд░реБ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫ

рдореЗрд░реЛ рдорд╛рдорд▓рд╛рдорд╛, рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рднрдпреЛ рдХрд┐рдирднрдиреЗ рдо рдзреЗрд░реИ рдЦрд╛рддрд╛рд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдерд┐рдПрдБред рдореИрд▓реЗ рдХреНрдпрд╛рд╕ рдЦрд╛рд▓реА рдЧрд░реНрдиреЗ рдирд┐рд░реНрдгрдп рдЧрд░реЗрдВред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди