{"action":"created","comment":{"url":"https://api.github.com/repos/progit/progit2-ru/pulls/comments/22762080","id":22762080,"diff_hunk":"@@ -63,38 +63,38 @@ $ cd /opt/git/my_project.git\n $ git init --bare --shared\n ----\n \n-You see how easy it is to take a Git repository, create a bare version, and place it on a server to which you and your collaborators have SSH access.\n-Now you're ready to collaborate on the same project.\n+Видите, как это просто, взять репозиторий Git, создать голую версию и поместить ее на сервер, к которому вы и ваши коллеги имеете доступ по SSH.\n+Теперь вы готовы работать вместе над одним проектом.\n \n-It's important to note that this is literally all you need to do to run a useful Git server to which several people have access – just add SSH-able accounts on a server, and stick a bare repository somewhere that all those users have read and write access to.\n-You're ready to go – nothing else needed.\n+Важно отметить, что это практически всё, что вам нужно сделать, чтобы получить рабочий Git-сервер, к которому несколько человек имеют доступ ― просто добавьте учетные записи SSH на сервер, и положите голый репозиторий в место, к которому эти пользователи имеют доступ на чтение и запись.\n+И всё.\n \n-In the next few sections, you'll see how to expand to more sophisticated setups.\n-This discussion will include not having to create user accounts for each user, adding public read access to repositories, setting up web UIs and more.\n-However, keep in mind that to collaborate with a couple of people on a private project, all you _need_ is an SSH server and a bare repository.\n+Из нескольких последующих разделов вы узнаете, как получить более сложные конфигурации.\n+В том числе как не создавать учетные записи для каждого пользователя, как сделать публичный доступ на чтение репозитория, как установить веб-интерфейс и др.\n+Однако, помните, что для совместной работы пары человек на закрытом проекте, всё, что вам _нужно_ ― это SSH-сервер и голый репозиторий.\n \n-==== Small Setups\n+==== Малые установки\n \n-If you're a small outfit or are just trying out Git in your organization and have only a few developers, things can be simple for you.\n-One of the most complicated aspects of setting up a Git server is user management.\n-If you want some repositories to be read-only to certain users and read/write to others, access and permissions can be a bit more difficult to arrange.\n+Если вы небольшая фирма или вы только пробуете Git в вашей организации и у вас мало разработчиков, то всё достаточно просто.\n+Один из наиболее сложных аспектов настройки сервера Git ― управление пользователями.\n+Если вы хотите, чтобы некоторые репозитории были доступны некоторым пользователям только на чтение, а другие и на чтение, и на запись, вам может быть не очень просто привести права доступа в порядок.\n \n-===== SSH Access\n+===== SSH доступ\n \n (((serving repositories, SSH)))\n-If you have a server to which all your developers already have SSH access, it's generally easiest to set up your first repository there, because you have to do almost no work (as we covered in the last section).\n-If you want more complex access control type permissions on your repositories, you can handle them with the normal filesystem permissions of the operating system your server runs.\n+Если у вас уже есть сервер, к которому все ваши разработчики имеют доступ по SSH, проще всего разместить ваш первый репозиторий там, поскольку вам не нужно практически ничего делать (как мы уже обсудили в предыдущем разделе).\n+Если вы хотите более сложного управления правами доступа к вашим репозиториям, вы можете сделать это обычными правами файловой системы, предоставляемыми операционной системой вашего сервера.\n \n-If you want to place your repositories on a server that doesn't have accounts for everyone on your team whom you want to have write access, then you must set up SSH access for them.\n-We assume that if you have a server with which to do this, you already have an SSH server installed, and that's how you're accessing the server.\n+Если вы хотите разместить ваши репозитории на сервер, на котором нет учетных записей для каждого в вашей команде, кому нужен доступ на запись, вы должны настроить доступ по SSH для них.\n+Будем считать, что если у вас есть сервер, на котором вы хотите это сделать, то SSH-сервер на нем уже установлен, и через него вы имеете доступ к серверу.\n \n-There are a few ways you can give access to everyone on your team.\n-The first is to set up accounts for everybody, which is straightforward but can be cumbersome.\n-You may not want to run `adduser` and set temporary passwords for every user.\n+Есть несколько способов дать доступ каждому в вашей команде.\n+Первый — настроить учетные записи для каждого, это просто, но может быть весьма обременительно.\n+Вероятно, вы не захотите для каждого пользователя выполнять `adduser` и задавать временные пароли.\n \n-A second method is to create a single 'git' user on the machine, ask every user who is to have write access to send you an SSH public key, and add that key to the `~/.ssh/authorized_keys` file of your new 'git' user.\n-At that point, everyone will be able to access that machine via the 'git' user.\n-This doesn't affect the commit data in any way – the SSH user you connect as doesn't affect the commits you've recorded.\n+Второй способ ― создать на машине одного пользователя 'git', попросить каждого пользователя, кому нужен доступ на запись, прислать вам открытый ключ SSH, и добавить эти ключи в файл `~/.ssh/authorized_keys` вашего нового пользователя 'git'.\n+Теперь все будут иметь доступ к этой машине через пользователя 'git'.\n+Это никак не повлияет на данные коммита ― пользователь, под которым вы соединяетесь с сервером по SSH, не затрагивает сделанные вами коммиты.","path":"book/04-git-server/sections/git-on-a-server.asc","position":136,"original_position":136,"commit_id":"47e5030f7f3f45e36ceef19c3fc562df2b51d03c","original_commit_id":"47e5030f7f3f45e36ceef19c3fc562df2b51d03c","user":{"login":"sadfuzzy","id":158883,"avatar_url":"https://avatars.githubusercontent.com/u/158883?v=3","gravatar_id":"","url":"https://api.github.com/users/sadfuzzy","html_url":"https://github.com/sadfuzzy","followers_url":"https://api.github.com/users/sadfuzzy/followers","following_url":"https://api.github.com/users/sadfuzzy/following{/other_user}","gists_url":"https://api.github.com/users/sadfuzzy/gists{/gist_id}","starred_url":"https://api.github.com/users/sadfuzzy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sadfuzzy/subscriptions","organizations_url":"https://api.github.com/users/sadfuzzy/orgs","repos_url":"https://api.github.com/users/sadfuzzy/repos","events_url":"https://api.github.com/users/sadfuzzy/events{/privacy}","received_events_url":"https://api.github.com/users/sadfuzzy/received_events","type":"User","site_admin":false},"body":"коммиты - фиксации","created_at":"2015-01-10T21:25:53Z","updated_at":"2015-01-10T21:25:53Z","html_url":"https://github.com/progit/progit2-ru/pull/97#discussion_r22762080","pull_request_url":"https://api.github.com/repos/progit/progit2-ru/pulls/97","_links":{"self":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/comments/22762080"},"html":{"href":"https://github.com/progit/progit2-ru/pull/97#discussion_r22762080"},"pull_request":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/97"}}},"pull_request":{"url":"https://api.github.com/repos/progit/progit2-ru/pulls/97","id":26793242,"html_url":"https://github.com/progit/progit2-ru/pull/97","diff_url":"https://github.com/progit/progit2-ru/pull/97.diff","patch_url":"https://github.com/progit/progit2-ru/pull/97.patch","issue_url":"https://api.github.com/repos/progit/progit2-ru/issues/97","number":97,"state":"open","locked":false,"title":"04 git server (5/9)","user":{"login":"evgkrsk","id":79869,"avatar_url":"https://avatars.githubusercontent.com/u/79869?v=3","gravatar_id":"","url":"https://api.github.com/users/evgkrsk","html_url":"https://github.com/evgkrsk","followers_url":"https://api.github.com/users/evgkrsk/followers","following_url":"https://api.github.com/users/evgkrsk/following{/other_user}","gists_url":"https://api.github.com/users/evgkrsk/gists{/gist_id}","starred_url":"https://api.github.com/users/evgkrsk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evgkrsk/subscriptions","organizations_url":"https://api.github.com/users/evgkrsk/orgs","repos_url":"https://api.github.com/users/evgkrsk/repos","events_url":"https://api.github.com/users/evgkrsk/events{/privacy}","received_events_url":"https://api.github.com/users/evgkrsk/received_events","type":"User","site_admin":false},"body":"Перевёл оставшиеся 5 секций главы №4.","created_at":"2015-01-04T09:48:03Z","updated_at":"2015-01-10T21:25:53Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b10afbf30aaf985832e3b5c76ed988a975b53f13","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/progit/progit2-ru/pulls/97/commits","review_comments_url":"https://api.github.com/repos/progit/progit2-ru/pulls/97/comments","review_comment_url":"https://api.github.com/repos/progit/progit2-ru/pulls/comments/{number}","comments_url":"https://api.github.com/repos/progit/progit2-ru/issues/97/comments","statuses_url":"https://api.github.com/repos/progit/progit2-ru/statuses/47e5030f7f3f45e36ceef19c3fc562df2b51d03c","head":{"label":"evgkrsk:04-git-server","ref":"04-git-server","sha":"47e5030f7f3f45e36ceef19c3fc562df2b51d03c","user":{"login":"evgkrsk","id":79869,"avatar_url":"https://avatars.githubusercontent.com/u/79869?v=3","gravatar_id":"","url":"https://api.github.com/users/evgkrsk","html_url":"https://github.com/evgkrsk","followers_url":"https://api.github.com/users/evgkrsk/followers","following_url":"https://api.github.com/users/evgkrsk/following{/other_user}","gists_url":"https://api.github.com/users/evgkrsk/gists{/gist_id}","starred_url":"https://api.github.com/users/evgkrsk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evgkrsk/subscriptions","organizations_url":"https://api.github.com/users/evgkrsk/orgs","repos_url":"https://api.github.com/users/evgkrsk/repos","events_url":"https://api.github.com/users/evgkrsk/events{/privacy}","received_events_url":"https://api.github.com/users/evgkrsk/received_events","type":"User","site_admin":false},"repo":{"id":25933399,"name":"progit2-ru","full_name":"evgkrsk/progit2-ru","owner":{"login":"evgkrsk","id":79869,"avatar_url":"https://avatars.githubusercontent.com/u/79869?v=3","gravatar_id":"","url":"https://api.github.com/users/evgkrsk","html_url":"https://github.com/evgkrsk","followers_url":"https://api.github.com/users/evgkrsk/followers","following_url":"https://api.github.com/users/evgkrsk/following{/other_user}","gists_url":"https://api.github.com/users/evgkrsk/gists{/gist_id}","starred_url":"https://api.github.com/users/evgkrsk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evgkrsk/subscriptions","organizations_url":"https://api.github.com/users/evgkrsk/orgs","repos_url":"https://api.github.com/users/evgkrsk/repos","events_url":"https://api.github.com/users/evgkrsk/events{/privacy}","received_events_url":"https://api.github.com/users/evgkrsk/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/evgkrsk/progit2-ru","description":"","fork":true,"url":"https://api.github.com/repos/evgkrsk/progit2-ru","forks_url":"https://api.github.com/repos/evgkrsk/progit2-ru/forks","keys_url":"https://api.github.com/repos/evgkrsk/progit2-ru/keys{/key_id}","collaborators_url":"https://api.github.com/repos/evgkrsk/progit2-ru/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/evgkrsk/progit2-ru/teams","hooks_url":"https://api.github.com/repos/evgkrsk/progit2-ru/hooks","issue_events_url":"https://api.github.com/repos/evgkrsk/progit2-ru/issues/events{/number}","events_url":"https://api.github.com/repos/evgkrsk/progit2-ru/events","assignees_url":"https://api.github.com/repos/evgkrsk/progit2-ru/assignees{/user}","branches_url":"https://api.github.com/repos/evgkrsk/progit2-ru/branches{/branch}","tags_url":"https://api.github.com/repos/evgkrsk/progit2-ru/tags","blobs_url":"https://api.github.com/repos/evgkrsk/progit2-ru/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/evgkrsk/progit2-ru/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/evgkrsk/progit2-ru/git/refs{/sha}","trees_url":"https://api.github.com/repos/evgkrsk/progit2-ru/git/trees{/sha}","statuses_url":"https://api.github.com/repos/evgkrsk/progit2-ru/statuses/{sha}","languages_url":"https://api.github.com/repos/evgkrsk/progit2-ru/languages","stargazers_url":"https://api.github.com/repos/evgkrsk/progit2-ru/stargazers","contributors_url":"https://api.github.com/repos/evgkrsk/progit2-ru/contributors","subscribers_url":"https://api.github.com/repos/evgkrsk/progit2-ru/subscribers","subscription_url":"https://api.github.com/repos/evgkrsk/progit2-ru/subscription","commits_url":"https://api.github.com/repos/evgkrsk/progit2-ru/commits{/sha}","git_commits_url":"https://api.github.com/repos/evgkrsk/progit2-ru/git/commits{/sha}","comments_url":"https://api.github.com/repos/evgkrsk/progit2-ru/comments{/number}","issue_comment_url":"https://api.github.com/repos/evgkrsk/progit2-ru/issues/comments/{number}","contents_url":"https://api.github.com/repos/evgkrsk/progit2-ru/contents/{+path}","compare_url":"https://api.github.com/repos/evgkrsk/progit2-ru/compare/{base}...{head}","merges_url":"https://api.github.com/repos/evgkrsk/progit2-ru/merges","archive_url":"https://api.github.com/repos/evgkrsk/progit2-ru/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/evgkrsk/progit2-ru/downloads","issues_url":"https://api.github.com/repos/evgkrsk/progit2-ru/issues{/number}","pulls_url":"https://api.github.com/repos/evgkrsk/progit2-ru/pulls{/number}","milestones_url":"https://api.github.com/repos/evgkrsk/progit2-ru/milestones{/number}","notifications_url":"https://api.github.com/repos/evgkrsk/progit2-ru/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/evgkrsk/progit2-ru/labels{/name}","releases_url":"https://api.github.com/repos/evgkrsk/progit2-ru/releases{/id}","created_at":"2014-10-29T17:44:38Z","updated_at":"2015-01-04T15:35:53Z","pushed_at":"2015-01-04T15:38:15Z","git_url":"git://github.com/evgkrsk/progit2-ru.git","ssh_url":"git@github.com:evgkrsk/progit2-ru.git","clone_url":"https://github.com/evgkrsk/progit2-ru.git","svn_url":"https://github.com/evgkrsk/progit2-ru","homepage":null,"size":166139,"stargazers_count":0,"watchers_count":0,"language":"AGS Script","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"progit:master","ref":"master","sha":"55e594b4f25f5af9360c60cb5c22bb056cdec640","user":{"login":"progit","id":95588,"avatar_url":"https://avatars.githubusercontent.com/u/95588?v=3","gravatar_id":"","url":"https://api.github.com/users/progit","html_url":"https://github.com/progit","followers_url":"https://api.github.com/users/progit/followers","following_url":"https://api.github.com/users/progit/following{/other_user}","gists_url":"https://api.github.com/users/progit/gists{/gist_id}","starred_url":"https://api.github.com/users/progit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/progit/subscriptions","organizations_url":"https://api.github.com/users/progit/orgs","repos_url":"https://api.github.com/users/progit/repos","events_url":"https://api.github.com/users/progit/events{/privacy}","received_events_url":"https://api.github.com/users/progit/received_events","type":"Organization","site_admin":false},"repo":{"id":25915089,"name":"progit2-ru","full_name":"progit/progit2-ru","owner":{"login":"progit","id":95588,"avatar_url":"https://avatars.githubusercontent.com/u/95588?v=3","gravatar_id":"","url":"https://api.github.com/users/progit","html_url":"https://github.com/progit","followers_url":"https://api.github.com/users/progit/followers","following_url":"https://api.github.com/users/progit/following{/other_user}","gists_url":"https://api.github.com/users/progit/gists{/gist_id}","starred_url":"https://api.github.com/users/progit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/progit/subscriptions","organizations_url":"https://api.github.com/users/progit/orgs","repos_url":"https://api.github.com/users/progit/repos","events_url":"https://api.github.com/users/progit/events{/privacy}","received_events_url":"https://api.github.com/users/progit/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/progit/progit2-ru","description":"","fork":false,"url":"https://api.github.com/repos/progit/progit2-ru","forks_url":"https://api.github.com/repos/progit/progit2-ru/forks","keys_url":"https://api.github.com/repos/progit/progit2-ru/keys{/key_id}","collaborators_url":"https://api.github.com/repos/progit/progit2-ru/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/progit/progit2-ru/teams","hooks_url":"https://api.github.com/repos/progit/progit2-ru/hooks","issue_events_url":"https://api.github.com/repos/progit/progit2-ru/issues/events{/number}","events_url":"https://api.github.com/repos/progit/progit2-ru/events","assignees_url":"https://api.github.com/repos/progit/progit2-ru/assignees{/user}","branches_url":"https://api.github.com/repos/progit/progit2-ru/branches{/branch}","tags_url":"https://api.github.com/repos/progit/progit2-ru/tags","blobs_url":"https://api.github.com/repos/progit/progit2-ru/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/progit/progit2-ru/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/progit/progit2-ru/git/refs{/sha}","trees_url":"https://api.github.com/repos/progit/progit2-ru/git/trees{/sha}","statuses_url":"https://api.github.com/repos/progit/progit2-ru/statuses/{sha}","languages_url":"https://api.github.com/repos/progit/progit2-ru/languages","stargazers_url":"https://api.github.com/repos/progit/progit2-ru/stargazers","contributors_url":"https://api.github.com/repos/progit/progit2-ru/contributors","subscribers_url":"https://api.github.com/repos/progit/progit2-ru/subscribers","subscription_url":"https://api.github.com/repos/progit/progit2-ru/subscription","commits_url":"https://api.github.com/repos/progit/progit2-ru/commits{/sha}","git_commits_url":"https://api.github.com/repos/progit/progit2-ru/git/commits{/sha}","comments_url":"https://api.github.com/repos/progit/progit2-ru/comments{/number}","issue_comment_url":"https://api.github.com/repos/progit/progit2-ru/issues/comments/{number}","contents_url":"https://api.github.com/repos/progit/progit2-ru/contents/{+path}","compare_url":"https://api.github.com/repos/progit/progit2-ru/compare/{base}...{head}","merges_url":"https://api.github.com/repos/progit/progit2-ru/merges","archive_url":"https://api.github.com/repos/progit/progit2-ru/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/progit/progit2-ru/downloads","issues_url":"https://api.github.com/repos/progit/progit2-ru/issues{/number}","pulls_url":"https://api.github.com/repos/progit/progit2-ru/pulls{/number}","milestones_url":"https://api.github.com/repos/progit/progit2-ru/milestones{/number}","notifications_url":"https://api.github.com/repos/progit/progit2-ru/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/progit/progit2-ru/labels{/name}","releases_url":"https://api.github.com/repos/progit/progit2-ru/releases{/id}","created_at":"2014-10-29T10:13:27Z","updated_at":"2015-01-10T21:21:36Z","pushed_at":"2015-01-10T21:21:35Z","git_url":"git://github.com/progit/progit2-ru.git","ssh_url":"git@github.com:progit/progit2-ru.git","clone_url":"https://github.com/progit/progit2-ru.git","svn_url":"https://github.com/progit/progit2-ru","homepage":null,"size":166946,"stargazers_count":23,"watchers_count":23,"language":"AGS Script","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":12,"mirror_url":null,"open_issues_count":6,"forks":12,"open_issues":6,"watchers":23,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/97"},"html":{"href":"https://github.com/progit/progit2-ru/pull/97"},"issue":{"href":"https://api.github.com/repos/progit/progit2-ru/issues/97"},"comments":{"href":"https://api.github.com/repos/progit/progit2-ru/issues/97/comments"},"review_comments":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/97/comments"},"review_comment":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/progit/progit2-ru/pulls/97/commits"},"statuses":{"href":"https://api.github.com/repos/progit/progit2-ru/statuses/47e5030f7f3f45e36ceef19c3fc562df2b51d03c"}}}}