{"action":"created","comment":{"url":"https://api.github.com/repos/progit/progit2-zh/pulls/comments/37005059","id":37005059,"diff_hunk":"@@ -284,51 +284,51 @@ To https://10.0.1.254/Jam\n    6afeb15..89cba2b  master -> master\n ----\n \n-Git thinks it worked.\n-Let's take a look at the history of the `README` file from Perforce's point of view, using the revision graph feature of `p4v`:\n+Git 认为它成功了。\n+让我们从 Perforce 的视角看一下 `README` 文件的历史，使用 `p4v` 的版本图功能。\n \n-.Perforce revision graph resulting from Git push.\n-image::images/git-fusion-perforce-graph.png[Perforce revision graph resulting from Git push.]\n+.Git 推送后的 Perforce 版本图\n+image::images/git-fusion-perforce-graph.png[Git 推送后的 Perforce 版本图。]\n \n-If you've never seen this view before, it may seem confusing, but it shows the same concepts as a graphical viewer for Git history.\n-We're looking at the history of the `README` file, so the directory tree at top left only shows that file as it surfaces in various branches.\n-At top right, we have a visual graph of how different revisions of the file are related, and the big-picture view of this graph is at bottom right.\n-The rest of the view is given to the details view for the selected revision (`2` in this case).\n+如果你在之前从未看过这个视图，它似乎让人困惑，但是它显示出了作为 Git 历史图形化查看器相同的概念。\n+我们正在查看 `README` 文件的历史，所以左上角的目录树只显示那个文件在不同分支的样子。\n+右上方，我们有不同版本文件关系的可视图，这个可视图的全局视图在右下方。\n+视图中剩余的部分显示出选择版本的详细信息（在这个例子中是 `2`）\n \n-One thing to notice is that the graph looks exactly like the one in Git's history.\n-Perforce didn't have a named branch to store the `1` and `2` commits, so it made an ``anonymous'' branch in the `.git-fusion` directory to hold it.\n-This will also happen for named Git branches that don't correspond to a named Perforce branch (and you can later map them to a Perforce branch using the configuration file).\n+还要注意的一件事是这个图看起来很像 Git 历史中的图。\n+Perforce 没有存储 `1` 和 `2` 提交的命名分支，所以它在 `.git-fusion` 目录中生成了一个 ``anonymous'' 分支来保存它。\n+这也会在 Git 命名分支不对应 Perforce 命名分支时发生（稍后你可以使用配置文件来映射它们到 Perforce 分支）。\n \n-Most of this happens behind the scenes, but the end result is that one person on a team can be using Git, another can be using Perforce, and neither of them will know about the other's choice.\n+这些大多数发生在后台，但是最终结果是团队中的一个人可以使用 Git，另一个可以使用 Perforce，而所有人都不知道其他人的选择。\n \n-====== Git-Fusion Summary\n+====== Git-Fusion 总结\n \n-If you have (or can get) access to your Perforce server, Git Fusion is a great way to make Git and Perforce talk to each other.\n-There's a bit of configuration involved, but the learning curve isn't very steep.\n-This is one of the few sections in this chapter where cautions about using Git's full power will not appear.\n-That's not to say that Perforce will be happy with everything you throw at it – if you try to rewrite history that's already been pushed, Git Fusion will reject it – but Git Fusion tries very hard to feel native.\n-You can even use Git submodules (though they'll look strange to Perforce users), and merge branches (this will be recorded as an integration on the Perforce side).\n+如果你有（或者能获得）接触你的 Perforce 服务器的权限，那么 Git Fusion 是使 Git 与 Perforce 互相交流的很好的方法。\n+这里包含了一点配置，但是学习曲线并不是很陡峭。\n+这是本章中其中一个不会出现无法使用 Git 全部能力的警告的章节。\n+这并不是说扔给 Perforce 任何东西都会高兴 - 如果你尝试重写已经推送的历史，Git Fusion 会拒绝它 - 虽然 Git Fusion 尽力让你感觉是原生的。\n+你甚至可以使用 Git 子模块（尽管它们对 Perforce 用户看起来很奇怪），合并分支（在 Perforce 这边会被记录了一次整合）。\n \n-If you can't convince the administrator of your server to set up Git Fusion, there is still a way to use these tools together.\n+如果不能说服你的服务器的管理员设置 Git Fusion，依然有一种方式来一起使用这两个工具。\n \n ===== Git-p4\n \n (((git commands, p4)))\n-Git-p4 is a two-way bridge between Git and Perforce.\n-It runs entirely inside your Git repository, so you won't need any kind of access to the Perforce server (other than user credentials, of course).\n-Git-p4 isn't as flexible or complete a solution as Git Fusion, but it does allow you to do most of what you'd want to do without being invasive to the server environment.\n+Git-p4 是 Git 与 Perforce 之间双向桥接。\n+它完全运行在你的 Git 仓库内，所以你不需要任何一种接触到 Perforce 服务器的权限（当然除了用户验证）。\n+Git-p4 并不像 Git Fusion 一样灵活或完整，但是它允许你做大部分不需要修改服务器环境的事情。\n \n [NOTE]\n ======\n-You'll need the `p4` tool somewhere in your `PATH` to work with git-p4.\n-As of this writing, it is freely available at http://www.perforce.com/downloads/Perforce/20-User[].\n+为了与 git-p4 一起工作需要在你的 `PATH` 环境变量中的某个目录中有 `p4` 工具。\n+在写这篇文章的时候，它可以在 http://www.perforce.com/downloads/Perforce/20-User[] 免费获得。\n ======\n \n-====== Setting Up\n+====== 设置\n \n-For example purposes, we'll be running the Perforce server from the Git Fusion OVA as shown above, but we'll bypass the Git Fusion server and go directly to the Perforce version control.\n+出于演示的目的，我们将会从上面演示的 Git Fusion OVA 运行 Perforce 服务器，但是我们会绕过 Git Fusion 服务器然后直接到达 Perforce 版本管理。","path":"book/09-git-and-other-scms/sections/client-p4.asc","position":320,"original_position":320,"commit_id":"9fb06e4b13cbf07721b3d3b0496c5cc217fea6ce","original_commit_id":"9fb06e4b13cbf07721b3d3b0496c5cc217fea6ce","user":{"login":"branchzero","id":7685609,"avatar_url":"https://avatars.githubusercontent.com/u/7685609?v=3","gravatar_id":"","url":"https://api.github.com/users/branchzero","html_url":"https://github.com/branchzero","followers_url":"https://api.github.com/users/branchzero/followers","following_url":"https://api.github.com/users/branchzero/following{/other_user}","gists_url":"https://api.github.com/users/branchzero/gists{/gist_id}","starred_url":"https://api.github.com/users/branchzero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/branchzero/subscriptions","organizations_url":"https://api.github.com/users/branchzero/orgs","repos_url":"https://api.github.com/users/branchzero/repos","events_url":"https://api.github.com/users/branchzero/events{/privacy}","received_events_url":"https://api.github.com/users/branchzero/received_events","type":"User","site_admin":false},"body":"到达 => 进行","created_at":"2015-08-13T18:02:08Z","updated_at":"2015-08-13T18:02:08Z","html_url":"https://github.com/progit/progit2-zh/pull/177#discussion_r37005059","pull_request_url":"https://api.github.com/repos/progit/progit2-zh/pulls/177","_links":{"self":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/comments/37005059"},"html":{"href":"https://github.com/progit/progit2-zh/pull/177#discussion_r37005059"},"pull_request":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/177"}}},"pull_request":{"url":"https://api.github.com/repos/progit/progit2-zh/pulls/177","id":39234697,"html_url":"https://github.com/progit/progit2-zh/pull/177","diff_url":"https://github.com/progit/progit2-zh/pull/177.diff","patch_url":"https://github.com/progit/progit2-zh/pull/177.patch","issue_url":"https://api.github.com/repos/progit/progit2-zh/issues/177","number":177,"state":"closed","locked":false,"title":"Translate 09-git-and-other-scms client-p4 v2","user":{"login":"networm","id":440624,"avatar_url":"https://avatars.githubusercontent.com/u/440624?v=3","gravatar_id":"","url":"https://api.github.com/users/networm","html_url":"https://github.com/networm","followers_url":"https://api.github.com/users/networm/followers","following_url":"https://api.github.com/users/networm/following{/other_user}","gists_url":"https://api.github.com/users/networm/gists{/gist_id}","starred_url":"https://api.github.com/users/networm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/networm/subscriptions","organizations_url":"https://api.github.com/users/networm/orgs","repos_url":"https://api.github.com/users/networm/repos","events_url":"https://api.github.com/users/networm/events{/privacy}","received_events_url":"https://api.github.com/users/networm/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-07-06T04:01:51Z","updated_at":"2015-08-13T18:02:08Z","closed_at":"2015-08-12T02:21:05Z","merged_at":"2015-08-12T02:21:05Z","merge_commit_sha":"a209bdf99fd49d8f3153809e3921358f93d18272","assignee":null,"milestone":{"url":"https://api.github.com/repos/progit/progit2-zh/milestones/1","html_url":"https://github.com/progit/progit2-zh/milestones/v1.0.0","labels_url":"https://api.github.com/repos/progit/progit2-zh/milestones/1/labels","id":1231002,"number":1,"title":"v1.0.0","description":"所有内容翻译完成并经过审校后合并入主干分支。","creator":{"login":"networm","id":440624,"avatar_url":"https://avatars.githubusercontent.com/u/440624?v=3","gravatar_id":"","url":"https://api.github.com/users/networm","html_url":"https://github.com/networm","followers_url":"https://api.github.com/users/networm/followers","following_url":"https://api.github.com/users/networm/following{/other_user}","gists_url":"https://api.github.com/users/networm/gists{/gist_id}","starred_url":"https://api.github.com/users/networm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/networm/subscriptions","organizations_url":"https://api.github.com/users/networm/orgs","repos_url":"https://api.github.com/users/networm/repos","events_url":"https://api.github.com/users/networm/events{/privacy}","received_events_url":"https://api.github.com/users/networm/received_events","type":"User","site_admin":false},"open_issues":24,"closed_issues":34,"state":"open","created_at":"2015-07-29T06:50:16Z","updated_at":"2015-08-12T10:37:19Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/progit/progit2-zh/pulls/177/commits","review_comments_url":"https://api.github.com/repos/progit/progit2-zh/pulls/177/comments","review_comment_url":"https://api.github.com/repos/progit/progit2-zh/pulls/comments{/number}","comments_url":"https://api.github.com/repos/progit/progit2-zh/issues/177/comments","statuses_url":"https://api.github.com/repos/progit/progit2-zh/statuses/9fb06e4b13cbf07721b3d3b0496c5cc217fea6ce","head":{"label":"networm:09-git-and-other-scms_client-p4","ref":"09-git-and-other-scms_client-p4","sha":"9fb06e4b13cbf07721b3d3b0496c5cc217fea6ce","user":{"login":"networm","id":440624,"avatar_url":"https://avatars.githubusercontent.com/u/440624?v=3","gravatar_id":"","url":"https://api.github.com/users/networm","html_url":"https://github.com/networm","followers_url":"https://api.github.com/users/networm/followers","following_url":"https://api.github.com/users/networm/following{/other_user}","gists_url":"https://api.github.com/users/networm/gists{/gist_id}","starred_url":"https://api.github.com/users/networm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/networm/subscriptions","organizations_url":"https://api.github.com/users/networm/orgs","repos_url":"https://api.github.com/users/networm/repos","events_url":"https://api.github.com/users/networm/events{/privacy}","received_events_url":"https://api.github.com/users/networm/received_events","type":"User","site_admin":false},"repo":{"id":28445173,"name":"progit2-zh","full_name":"networm/progit2-zh","owner":{"login":"networm","id":440624,"avatar_url":"https://avatars.githubusercontent.com/u/440624?v=3","gravatar_id":"","url":"https://api.github.com/users/networm","html_url":"https://github.com/networm","followers_url":"https://api.github.com/users/networm/followers","following_url":"https://api.github.com/users/networm/following{/other_user}","gists_url":"https://api.github.com/users/networm/gists{/gist_id}","starred_url":"https://api.github.com/users/networm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/networm/subscriptions","organizations_url":"https://api.github.com/users/networm/orgs","repos_url":"https://api.github.com/users/networm/repos","events_url":"https://api.github.com/users/networm/events{/privacy}","received_events_url":"https://api.github.com/users/networm/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/networm/progit2-zh","description":"","fork":true,"url":"https://api.github.com/repos/networm/progit2-zh","forks_url":"https://api.github.com/repos/networm/progit2-zh/forks","keys_url":"https://api.github.com/repos/networm/progit2-zh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/networm/progit2-zh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/networm/progit2-zh/teams","hooks_url":"https://api.github.com/repos/networm/progit2-zh/hooks","issue_events_url":"https://api.github.com/repos/networm/progit2-zh/issues/events{/number}","events_url":"https://api.github.com/repos/networm/progit2-zh/events","assignees_url":"https://api.github.com/repos/networm/progit2-zh/assignees{/user}","branches_url":"https://api.github.com/repos/networm/progit2-zh/branches{/branch}","tags_url":"https://api.github.com/repos/networm/progit2-zh/tags","blobs_url":"https://api.github.com/repos/networm/progit2-zh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/networm/progit2-zh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/networm/progit2-zh/git/refs{/sha}","trees_url":"https://api.github.com/repos/networm/progit2-zh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/networm/progit2-zh/statuses/{sha}","languages_url":"https://api.github.com/repos/networm/progit2-zh/languages","stargazers_url":"https://api.github.com/repos/networm/progit2-zh/stargazers","contributors_url":"https://api.github.com/repos/networm/progit2-zh/contributors","subscribers_url":"https://api.github.com/repos/networm/progit2-zh/subscribers","subscription_url":"https://api.github.com/repos/networm/progit2-zh/subscription","commits_url":"https://api.github.com/repos/networm/progit2-zh/commits{/sha}","git_commits_url":"https://api.github.com/repos/networm/progit2-zh/git/commits{/sha}","comments_url":"https://api.github.com/repos/networm/progit2-zh/comments{/number}","issue_comment_url":"https://api.github.com/repos/networm/progit2-zh/issues/comments{/number}","contents_url":"https://api.github.com/repos/networm/progit2-zh/contents/{+path}","compare_url":"https://api.github.com/repos/networm/progit2-zh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/networm/progit2-zh/merges","archive_url":"https://api.github.com/repos/networm/progit2-zh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/networm/progit2-zh/downloads","issues_url":"https://api.github.com/repos/networm/progit2-zh/issues{/number}","pulls_url":"https://api.github.com/repos/networm/progit2-zh/pulls{/number}","milestones_url":"https://api.github.com/repos/networm/progit2-zh/milestones{/number}","notifications_url":"https://api.github.com/repos/networm/progit2-zh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/networm/progit2-zh/labels{/name}","releases_url":"https://api.github.com/repos/networm/progit2-zh/releases{/id}","created_at":"2014-12-24T10:12:38Z","updated_at":"2015-08-11T05:00:49Z","pushed_at":"2015-08-13T10:41:34Z","git_url":"git://github.com/networm/progit2-zh.git","ssh_url":"git@github.com:networm/progit2-zh.git","clone_url":"https://github.com/networm/progit2-zh.git","svn_url":"https://github.com/networm/progit2-zh","homepage":null,"size":160350,"stargazers_count":6,"watchers_count":6,"language":"CSS","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":4,"mirror_url":null,"open_issues_count":0,"forks":4,"open_issues":0,"watchers":6,"default_branch":"master"}},"base":{"label":"progit:master","ref":"master","sha":"5d1559eefe4a24a1c1161fbcd1dda13f98941d16","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":26017730,"name":"progit2-zh","full_name":"progit/progit2-zh","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-zh","description":"","fork":false,"url":"https://api.github.com/repos/progit/progit2-zh","forks_url":"https://api.github.com/repos/progit/progit2-zh/forks","keys_url":"https://api.github.com/repos/progit/progit2-zh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/progit/progit2-zh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/progit/progit2-zh/teams","hooks_url":"https://api.github.com/repos/progit/progit2-zh/hooks","issue_events_url":"https://api.github.com/repos/progit/progit2-zh/issues/events{/number}","events_url":"https://api.github.com/repos/progit/progit2-zh/events","assignees_url":"https://api.github.com/repos/progit/progit2-zh/assignees{/user}","branches_url":"https://api.github.com/repos/progit/progit2-zh/branches{/branch}","tags_url":"https://api.github.com/repos/progit/progit2-zh/tags","blobs_url":"https://api.github.com/repos/progit/progit2-zh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/progit/progit2-zh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/progit/progit2-zh/git/refs{/sha}","trees_url":"https://api.github.com/repos/progit/progit2-zh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/progit/progit2-zh/statuses/{sha}","languages_url":"https://api.github.com/repos/progit/progit2-zh/languages","stargazers_url":"https://api.github.com/repos/progit/progit2-zh/stargazers","contributors_url":"https://api.github.com/repos/progit/progit2-zh/contributors","subscribers_url":"https://api.github.com/repos/progit/progit2-zh/subscribers","subscription_url":"https://api.github.com/repos/progit/progit2-zh/subscription","commits_url":"https://api.github.com/repos/progit/progit2-zh/commits{/sha}","git_commits_url":"https://api.github.com/repos/progit/progit2-zh/git/commits{/sha}","comments_url":"https://api.github.com/repos/progit/progit2-zh/comments{/number}","issue_comment_url":"https://api.github.com/repos/progit/progit2-zh/issues/comments{/number}","contents_url":"https://api.github.com/repos/progit/progit2-zh/contents/{+path}","compare_url":"https://api.github.com/repos/progit/progit2-zh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/progit/progit2-zh/merges","archive_url":"https://api.github.com/repos/progit/progit2-zh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/progit/progit2-zh/downloads","issues_url":"https://api.github.com/repos/progit/progit2-zh/issues{/number}","pulls_url":"https://api.github.com/repos/progit/progit2-zh/pulls{/number}","milestones_url":"https://api.github.com/repos/progit/progit2-zh/milestones{/number}","notifications_url":"https://api.github.com/repos/progit/progit2-zh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/progit/progit2-zh/labels{/name}","releases_url":"https://api.github.com/repos/progit/progit2-zh/releases{/id}","created_at":"2014-10-31T13:43:10Z","updated_at":"2015-08-13T06:00:04Z","pushed_at":"2015-08-13T17:13:42Z","git_url":"git://github.com/progit/progit2-zh.git","ssh_url":"git@github.com:progit/progit2-zh.git","clone_url":"https://github.com/progit/progit2-zh.git","svn_url":"https://github.com/progit/progit2-zh","homepage":null,"size":161934,"stargazers_count":303,"watchers_count":303,"language":"CSS","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":105,"mirror_url":null,"open_issues_count":30,"forks":105,"open_issues":30,"watchers":303,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/177"},"html":{"href":"https://github.com/progit/progit2-zh/pull/177"},"issue":{"href":"https://api.github.com/repos/progit/progit2-zh/issues/177"},"comments":{"href":"https://api.github.com/repos/progit/progit2-zh/issues/177/comments"},"review_comments":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/177/comments"},"review_comment":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/progit/progit2-zh/pulls/177/commits"},"statuses":{"href":"https://api.github.com/repos/progit/progit2-zh/statuses/9fb06e4b13cbf07721b3d3b0496c5cc217fea6ce"}}}}