You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ydb/docs/en/core/development/suggest-change.md
+44-5
Original file line number
Diff line number
Diff line change
@@ -10,9 +10,32 @@ You need to have a GitHub account to suggest any changes to the YDB source code.
10
10
11
11
### SSH key pair {#ssh_key_pair}
12
12
13
-
Create an SSH key pair and register the public key at your GitHub account settings to be authenticated at GitHub when running commands from a command line on your development machine.
13
+
* In general to connect to github you can use: ssh/token/ssh from yubikey/password etc. Recommended method is ssh keys.
14
+
* If you don't have already created keys (or yubikey), then just create new keys. Full instructions are on [this GitHub page](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key).
15
+
* If you have a yubikey, you can use the legacy key from the yubikey:
16
+
* Let's assume you have already configured yubikey (or configure yubikey locally)
17
+
* On your laptop: `skotty ssh keys`
18
+
* Upload `legacy@yubikey` ssh key to github (over ui: https://github.com/settings/keys)
Full instructions are on [this GitHub page](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key).
21
+
#### Remote development
22
+
If you are developing on a remote dev host you can use the key from your laptop (generated keys or keys from yubikey). You need to configure key forwarding. (Full instructions are on [this GitHub page](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/using-ssh-agent-forwarding) ).
23
+
24
+
Suppose your remote machine is dev123456.search.yandex.net.
25
+
26
+
* on your laptop add ssh forwarding (`~/.ssh/config`):
27
+
```
28
+
Host dev123456.search.yandex.net
29
+
ForwardAgent yes
30
+
```
31
+
* on remote dev host add to `~/.bashrc`:
32
+
```
33
+
if [[ -S "$SSH_AUTH_SOCK" && ! -h "$SSH_AUTH_SOCK" ]]; then
Using GitHub CLI enables you to create Pull Requests and manage repositories from a command line. You can also use GitHub UI for such actions.
42
65
@@ -75,18 +98,34 @@ And copy-paste the shown token to complete the GitHub CLI configuration.
75
98
76
99
YDB official repository is [https://github.com/ydb-platform/ydb](https://github.com/ydb-platform/ydb), located under the YDB organization account `ydb-platform`.
77
100
78
-
To work on the YDB code changes, you need to create a fork repository under your GitHub account, and clone it locally. There's a single GitHub CLI command which does all of that together:
79
-
101
+
Create working dir:
80
102
```
81
103
mkdir -p ~/ydbwork
82
104
cd ~/ydbwork
83
105
```
106
+
107
+
To work on the YDB code changes, you need to create a fork repository under your GitHub account, and clone it locally.
108
+
109
+
{% list tabs %}
110
+
111
+
- GitHub CLI:
112
+
113
+
There's a single GitHub CLI command which does all of that together:
Forking a repository is an instant action, however cloning to the local machine takes some time to transfer about 650 MB of repository data over the network.
0 commit comments