AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เชŸเซเชฐเชพเชฏเชฎ, เชนเซ‡เชฒเซ‹!

เชนเซเช‚ BitBucket เชฆเซเชตเชพเชฐเชพ GitLab เช…เชจเซ‡ AppCenter เชเช•เซ€เช•เชฐเชฃเชจเซ‡ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเชพ เชฎเชพเชฐเชพ เช…เชจเซเชญเชต เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚.

Xamarin เชชเชฐ เช•เซเชฐเซ‹เชธ-เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชฎเชพเชŸเซ‡ UI เชชเชฐเซ€เช•เซเชทเชฃเซ‹เชจเชพ เชธเซเชตเชšเชพเชฒเชฟเชค เชฒเซ‹เชจเซเชšเชฟเช‚เช—เชจเซ‡ เชธเซ‡เชŸ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช†เชตเชพ เชเช•เซ€เช•เชฐเชฃเชจเซ€ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชค เชŠเชญเซ€ เชฅเชˆ. เช•เชŸ เชจเซ€เชšเซ‡ เชตเชฟเช—เชคเชตเชพเชฐ เชŸเซเชฏเซเชŸเซ‹เชฐเซ€เชฏเชฒ!

* เชœเซ‹ เชœเชจเชคเชพเชจเซ‡ เชฐเชธ เชนเซ‹เชฏ เชคเซ‹ เชนเซเช‚ เช•เซเชฐเซ‹เชธ-เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚ UI เชชเชฐเซ€เช•เซเชทเชฃเชจเซ‡ เชธเซเชตเชšเชพเชฒเชฟเชค เช•เชฐเชตเชพ เชตเชฟเชถเซ‡ เชเช• เช…เชฒเช— เชฒเซ‡เช– เชฌเชจเชพเชตเซ€เชถ.

เชฎเซ‡เช‚ เช†เชตเซ€ เชœ เชเช• เชธเชพเชฎเช—เซเชฐเซ€ เช–เซ‹เชฆเซ€ เช›เซ‡ เชเช• เชฒเซ‡เช–. เชคเซ‡เชฅเซ€, เชฎเชพเชฐเซ‹ เชฒเซ‡เช– เช•เซ‹เชˆเชจเซ‡ เชฎเชฆเชฆ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เช‰เชฆเซเชฆเซ‡เชถ: เช…เชฎเชพเชฐเซ€ เชŸเซ€เชฎ เชตเชฐเซเชเชจ เช•เช‚เชŸเซเชฐเซ‹เชฒ เชธเชฟเชธเซเชŸเชฎ เชคเชฐเซ€เช•เซ‡ GitLab เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชœเซ‹เชคเชพเช‚, AppCenter เชชเชฐ UI เชชเชฐเซ€เช•เซเชทเชฃเซ‹เชจเซเช‚ เช‘เชŸเซ‹เชฎเซ‡เชŸเชฟเช• เชฒเซ‰เชจเซเชš เชธเซ‡เชŸ เช•เชฐเซ‹.

เชธเชฎเชธเซเชฏเชพ เชคเซ‡ เชฌเชนเชพเชฐ เช†เชตเซเชฏเซเช‚ เช›เซ‡ เช•เซ‡ AppCenter เชธเซ€เชงเชพ GitLab เชธเชพเชฅเซ‡ เชธเช‚เช•เชฒเชฟเชค เช•เชฐเชคเซเช‚ เชจเชฅเซ€. BitBucket เชฎเชพเชฐเชซเชคเซ‡ เชฌเชพเชฏเชชเชพเชธ เช‰เช•เซ‡เชฒเซ‹เชฎเชพเช‚เชฅเซ€ เชเช• เชคเชฐเซ€เช•เซ‡ เชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹.

เชชเช—เชฒเชพเช‚เช“

1. BitBucket เชชเชฐ เช–เชพเชฒเซ€ เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€ เชฌเชจเชพเชตเซ‹

เชฎเชจเซ‡ เช†เชจเซเช‚ เชตเชงเซ เชตเชฟเช—เชคเชตเชพเชฐ เชตเชฐเซเชฃเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชฆเซ‡เช–เชพเชคเซ€ เชจเชฅเซ€ :)

2. GitLab เชธเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡

เช…เชฎเชจเซ‡ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชฐเชฟเชชเซ‹เชเซ€เชŸเชฐเซ€เชฎเชพเช‚ เชฆเชฌเชพเชฃ/เชฎเชฐเซเชœ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡, เชคเซเชฏเชพเชฐเซ‡ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชชเชฃ BitBucket เชชเชฐ เช…เชชเชฒเซ‹เชก เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชฐเชจเชฐ เช‰เชฎเซ‡เชฐเซ‹ (เช…เชฅเชตเชพ เชนเชพเชฒเชจเซ€ .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

เช…เชฎเซ‡ เชฌเชฟเชฒเซเชก เชฒเซ‹เชจเซเชš เช•เชฐเซ€เช เช›เซ€เช, เชคเชชเชพเชธเซ‹ เช•เซ‡ เช…เชฎเชพเชฐเชพ เชซเซ‡เชฐเชซเชพเชฐเซ‹/เชซเชพเชˆเชฒเซ‹ BitBucket เชชเชฐ เช›เซ‡.
* เชชเซเชฐเซ‡เช•เซเชŸเชฟเชธ เชฌเชคเชพเชตเซเชฏเชพ เชชเซเชฐเชฎเชพเชฃเซ‡, SSH เช•เซ€ เชธเซ‡เชŸ เช•เชฐเชตเซ€ เชตเซˆเช•เชฒเซเชชเชฟเช• เช›เซ‡. เชชเชฐเช‚เชคเซ, เชฎเชพเชคเซเชฐ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชนเซเช‚ เชจเซ€เชšเซ‡ SSH เชฎเชพเชฐเชซเชคเซ‡ เช•เชจเซ‡เช•เซเชถเชจ เชธเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ€เชถ

SSH เชฆเซเชตเชพเชฐเชพ เช•เชจเซ‡เช•เซเชถเชจ

เชชเซเชฐเชฅเชฎ เชคเชฎเชพเชฐเซ‡ SSH เช•เซ€ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช† เชตเชฟเชถเซ‡ เช˜เชฃเชพ เชฒเซ‡เช–เซ‹ เชฒเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹ เช…เชนเซ€เช‚.
เชœเชจเชฐเซ‡เชŸ เช•เชฐเซ‡เชฒเซ€ เช•เซ€ เช†เชจเชพ เชœเซ‡เชตเซ€ เชฆเซ‡เช–เชพเชฏ เช›เซ‡:
AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เชตเชงเซ เช—เซเชชเซเชค เช•เซ€ GitLab เชฎเชพเช‚ เชšเชฒ เชคเชฐเซ€เช•เซ‡ เช‰เชฎเซ‡เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชธเซ‡เชŸเชฟเช‚เช—เซเชธ > CI/CD > เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชตเซ‡เชฐเซ€เชเชฌเชฒเซเชธ เชชเชฐ เชœเชพเช“. เชซเชพเช‡เชฒเชจเซ€ เชฌเชงเซ€ เชธเชพเชฎเช—เซเชฐเซ€ เช‰เชฎเซ‡เชฐเซ‹ เชœเซ‡เชฎเชพเช‚ เชคเชฎเซ‡ เช—เซเชชเซเชค เช•เซ€ เชธเชพเชšเชตเซ€ เช›เซ‡. เชšเชพเชฒเซ‹ เชšเชฒเชจเซ‡ SSH_PRIVATE_KEY เช•เชนเซ€เช.
* เช† เชซเชพเช‡เชฒ, เชธเชพเชฐเซเชตเชœเชจเชฟเช• เช•เซ€ เชซเชพเช‡เชฒเชฅเซ€ เชตเชฟเชชเชฐเซ€เชค, เชเช•เซเชธเซเชŸเซ‡เช‚เชถเชจ เชงเชฐเชพเชตเชถเซ‡ เชจเชนเซ€เช‚
AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เชธเชฐเชธ, เช†เช—เชณ เชคเชฎเชพเชฐเซ‡ เชฌเซ€เชŸเชฌเช•เซ‡เชŸเชฎเชพเช‚ เชธเชพเชฐเซเชตเชœเชจเชฟเช• เช•เซ€ เช‰เชฎเซ‡เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€ เช–เซ‹เชฒเซ‹ เช…เชจเซ‡ เชธเซ‡เชŸเชฟเช‚เช—เซเชธ > เชเช•เซเชธเซ‡เชธ เช•เซ€ เชชเชฐ เชœเชพเช“.

AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เช…เชนเซ€เช‚ เช†เชชเชฃเซ‡ Add Key เชชเชฐ เช•เซเชฒเชฟเช• เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชชเชฌเซเชฒเชฟเช• เช•เซ€ (เชเช•เซเชธเซเชŸเซ‡เช‚เชถเชจ .pub เชธเชพเชฅเซ‡เชจเซ€ เชซเชพเช‡เชฒ) เชธเชพเชฅเซ‡ เชซเชพเช‡เชฒเชจเซ€ เชธเชพเชฎเช—เซเชฐเซ€ เชฆเชพเช–เชฒ เช•เชฐเซ€เช เช›เซ€เช.

เช†เช—เชณเชจเซเช‚ เชชเช—เชฒเซเช‚ เช—เชฟเชŸเชฒเซ‡เชฌ-เชฐเชจเชฐเชฎเชพเช‚ เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เช›เซ‡. เช† เช†เชฆเซ‡เชถเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹, เชชเชฐเช‚เชคเซ เชคเชฎเชพเชฐเซ€ เชตเชฟเช—เชคเซ‹ เชธเชพเชฅเซ‡ เชซเซ‚เชฆเชกเซ€ เชฌเชฆเชฒเซ‹

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 เชเช•เชพเช‰เชจเซเชŸ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒ เช›เซ‡?

เชธเชฎเชธเซเชฏเชพเชจเซ‡ เช‰เช•เซ‡เชฒเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชคเชฎเชพเชฐเชพ BitBucket เชเช•เชพเช‰เชจเซเชŸเชจเซ‡ AppCenterเชฎเชพเช‚เชฅเซ€ เช…เชจเชฒเชฟเช‚เช• เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช…เชฎเซ‡ เช–เซ‹เชŸเชพ BitBucket เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚ เชฒเซ‰เช— เช‡เชจ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชชเซเชฐเซ‹เชซเชพเช‡เชฒ เชชเชฐ เชœเชˆเช เช›เซ€เช.

AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เช†เช—เชณ, เชธเซ‡เชŸเชฟเช‚เช—เซเชธ > เชเช•เซเชธเซ‡เชธ เชฎเซ‡เชจเซ‡เชœเชฎเซ‡เชจเซเชŸ > OAuth เชชเชฐ เชœเชพเช“

AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เชคเชฎเชพเชฐเชพ เชเช•เชพเช‰เชจเซเชŸเชจเซ‡ เช…เชจเชฒเชฟเช‚เช• เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฐเชฆ เช•เชฐเซ‹ เชชเชฐ เช•เซเชฒเชฟเช• เช•เชฐเซ‹.

AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เช† เชชเช›เซ€, เชคเชฎเชพเชฐเซ‡ เชœเชฐเซ‚เชฐเซ€ BitBucket เชเช•เชพเช‰เชจเซเชŸ เชธเชพเชฅเซ‡ เชฒเซ‰เช— เช‡เชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
* เช›เซ‡เชฒเซเชฒเชพ เช‰เชชเชพเชฏ เชคเชฐเซ€เช•เซ‡, เชคเชฎเชพเชฐเชพ เชฌเซเชฐเชพเช‰เชเชฐ เช•เซ‡เชถเชจเซ‡ เชชเชฃ เชธเชพเชซ เช•เชฐเซ‹.

เชนเชตเซ‡ เชšเชพเชฒเซ‹ AppCenter เชชเชฐ เชœเชˆเช. เชฌเชฟเชฒเซเชก เชตเชฟเชญเชพเช— เชชเชฐ เชœเชพเช“, BitBucket เชเช•เชพเช‰เชจเซเชŸเชจเซ‡ เชกเชฟเชธเซเช•เชจเซ‡เช•เซเชŸ เช•เชฐเซ‹ เชชเชฐ เช•เซเชฒเชฟเช• เช•เชฐเซ‹

AppCenter เช…เชจเซ‡ GitLab เชเช•เซ€เช•เชฐเชฃ

เชœเซเชฏเชพเชฐเซ‡ เชœเซ‚เชจเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เช…เชจเชฒเชฟเช‚เช• เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ AppCenter เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชฒเชฟเช‚เช• เช•เชฐเซ€เช เช›เซ€เช. เชนเชตเซ‡ เช‡เชšเซเช›เชฟเชค เช–เชพเชคเชพ เชชเชฐ เชœเชพเช“.

'eval' เชจเซ‡ เช†เช‚เชคเชฐเชฟเช• เช…เชฅเชตเชพ เชฌเชพเชนเซเชฏ เช†เชฆเซ‡เชถ เชคเชฐเซ€เช•เซ‡ เช“เชณเช–เชตเชพเชฎเชพเช‚ เช†เชตเชคเซ€ เชจเชฅเซ€

เช…เชฎเซ‡ เช†เชฆเซ‡เชถเชจเซ‡ เชฌเชฆเชฒเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช

  - eval $(ssh-agent -s)

เชŸเซ€เชฎ:

  - ssh-agent

เช•เซ‡เชŸเชฒเชพเช• เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚, เชคเชฎเชพเชฐเซ‡ เช•เซเชฏเชพเช‚ เชคเซ‹ C:Program FilesGitusrbinssh-agent.exe เชฎเชพเชŸเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชชเชพเชฅเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเซ‹ เชชเชกเชถเซ‡, เช…เชฅเชตเชพ เชœเซเชฏเชพเช‚ เชฐเชจเชฐ เชšเชพเชฒเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เชคเซ‡ เชฎเชถเซ€เชจ เชชเชฐเชจเชพ เชธเชฟเชธเซเชŸเชฎ เชตเซ‡เชฐเซ€เชเชฌเชฒเซเชธเชฎเชพเช‚ เช† เชชเชพเชฅ เช‰เชฎเซ‡เชฐเซ‹.

AppCenter เชฌเชฟเชฒเซเชก เชœเซ‚เชจเชพ เชฌเชฟเชŸเชฌเช•เซ‡เชŸ เชฐเชฟเชชเซ‹เชเซ€เชŸเชฐเซ€เชฎเชพเช‚เชฅเซ€ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชฎเชพเชŸเซ‡ เชฌเชฟเชฒเซเชก เชถเชฐเซ‚ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡

เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชธเชฎเชธเซเชฏเชพ เชŠเชญเซ€ เชฅเชˆ เช•เชพเชฐเชฃ เช•เซ‡ เชนเซเช‚ เชฌเชนเซเชตเชฟเชง เชเช•เชพเช‰เชจเซเชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเซ‹ เชนเชคเซ‹. เชฎเซ‡เช‚ เช•เซ‡เชถ เชธเชพเชซ เช•เชฐเชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹