﻿{"id":2810,"date":"2016-03-20T20:27:46","date_gmt":"2016-03-20T12:27:46","guid":{"rendered":"http:\/\/www.jointd.com\/?p=2810"},"modified":"2016-04-02T21:19:31","modified_gmt":"2016-04-02T13:19:31","slug":"%e5%8d%93%e5%bf%86%e7%bf%bb%e8%af%91%ef%bc%9a%e4%b8%ad%e8%8b%b1%e5%af%b9%e7%85%a7%ef%bc%9agit%e5%8f%8agithubodoo%e4%bb%a3%e7%a0%81%e6%89%80%e5%9c%a8%e5%b9%b3%e5%8f%b0%ef%bc%89%e5%ae%98%e6%96%b9","status":"publish","type":"post","link":"https:\/\/www.jointd.com\/?p=2810","title":{"rendered":"\u5353\u5fc6\u7ffb\u8bd1\uff1a\u4e2d\u82f1\u5bf9\u7167\uff1aGit\u53caGithub(Odoo\u4ee3\u7801\u6240\u5728\u5e73\u53f0\uff09\u5b98\u65b9\u5165\u95e8\u6559\u7a0b\u7ffb\u8bd1\uff1aLearn Git and GitHub without any code!"},"content":{"rendered":"<h2><b><span style=\"font-size: large;\">\u5353\u5fc6\u7ffb\u8bd1\uff1a\u4e2d\u82f1\u5bf9\u7167\uff1aGit\u53caGithub(Odoo\u4ee3\u7801\u6240\u5728\u5e73\u53f0\uff09\u5b98\u65b9\u5165\u95e8\u6559\u7a0b\u7ffb\u8bd1<\/span><\/b><\/h2>\n<p>Odoo\u4ee3\u7801\uff1a<a href=\"https:\/\/www.github.com\/odoo\">https:\/\/www.github.com\/odoo<\/a>,Odoo\u5b98\u65b9\u7684\u6e90\u4ee3\u7801\u4e5f\u6258\u7ba1\u5728GitHub<\/p>\n<div>\n<div><\/div>\n<div>\n<div>\n<div>\n<div><b><span style=\"color: #0000ee;\"><b><b>Learn Git and GitHub without any code!\u00a0<\/b><b><span style=\"font-size: large;\">\u65e0\u9700\u4efb\u4f55\u4ee3\u7801\uff0c\u5b66\u4e60Git\u548cGitHub<\/span><\/b><\/b><\/span><\/b><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div><\/div>\n<div>\n<div>\n<p>\u6e90\u8fde\u63a5\uff1a<span style=\"font-size: large;\"><b>\u00a0<\/b><\/span><b><a href=\"https:\/\/guides.github.com\/activities\/hello-world\/\">https:\/\/guides.github.com\/activities\/hello-world\/<\/a><\/b><\/p>\n<\/div>\n<div><\/div>\n<div>Using the Hello World guide, you\u2019ll create a repository, start a branch,<\/div>\n<div>write comments, and open a pull request.<\/div>\n<div>\u4f7f\u7528&#8221;Hello World\u4f60\u597d\u4e16\u754c&#8221;\u624b\u518c\uff0c\u60a8\u5c06\u521b\u5efa\u4e00\u4e2a\u4ed3\u5e93\uff0c\u5f00\u59cb\u4e00\u4e2a\u5206\u652f\uff0c\u7f16\u5199\u6ce8\u91ca\uff0c\u4ee5\u53ca\u6253\u5f00\u4e00\u4e2aPull request\uff08\u5f15\u5165\u8bf7\u6c42\uff09\u3002<\/div>\n<div>\n<div><span style=\"color: #5a83a5; font-family: Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: large;\">\u00a0<\/span><\/div>\n<div>\n<p>The\u00a0<strong>Hello World<\/strong>\u00a0project is a time-honored tradition in computer programming.<\/p>\n<p>It is a simple exercise that gets you started when learning something new. Let\u2019s get started with GitHub!<\/p>\n<p>&#8220;Hello World\u4f60\u597d\u4e16\u754c&#8221;\u662f\u4e00\u4e2a\u5728\u8ba1\u7b97\u673a\u7f16\u7a0b\u754c\u6709\u7740\u60a0\u4e45\u4f20\u7edf\u7684\u9879\u76ee\u3002\u5b83\u8ba9\u60a8\u8fdb\u884c\u8fd9\u4e2a\u7b80\u5355\u7684\u5b9e\u8df5\u4ece\u800c\u5f00\u59cb\u5b66\u4e60\u4e00\u4e9b\u65b0\u4e1c\u897f\u3002\u8ba9\u6211\u4eec\u4e5f\u5f00\u59cb\u5427\uff01<\/p>\n<p><strong>You\u2019ll learn how to: \u60a8\u5c06\u5b66\u4e60\u5982\u4f55\uff1a<\/strong><\/p>\n<ul>\n<li>Create and use a repository \u521b\u5efa\u548c\u4f7f\u7528\u4e00\u4e2a\u4ed3\u5e93<\/li>\n<li>Start and manage a new branch \u5f00\u59cb\u7ba1\u7406\u4e00\u4e2a\u5206\u652f<\/li>\n<li>Make changes to a file and push them to GitHub as commits \u66f4\u6539\u6587\u4ef6\u5e76\u4f5c\u4e3a\u4e00\u4e2a\u63d0\u4ea4\u63a8\u9001\u4ed6\u4eec\u5230Github<\/li>\n<li>Open and merge a pull request \u6253\u5f00\u53ca\u5408\u5e76\u4e00\u4e2apull request\uff08\u5f15\u5165\u8bf7\u6c42\uff09<\/li>\n<\/ul>\n<h2>What is GitHub? \u4ec0\u4e48\u662fGitHub?<\/h2>\n<p>GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere.<\/p>\n<p>This tutorial teaches you GitHub essentials like\u00a0<em>repositories<\/em>,\u00a0<em>branches<\/em>,\u00a0<em>commits<\/em>, and\u00a0<em>pull requests<\/em>. You\u2019ll create your own Hello World repository and learn GitHub\u2019s pull request workflow, a popular way to create and review code.<\/p>\n<p>Github\u662f\u4e00\u4e2a\u4ee3\u7801 \u7248\u672c\u63a7\u5236\u548c\u534f\u4f5c\u7684\u5e73\u53f0\u3002\u5b83\u8ba9\u60a8\u548c\u5176\u4ed6\u4eba\u5728\u4efb\u4f55\u5730\u65b9\u5171\u540c\u4e3a\u4e00\u4e2a\u9879\u76ee\u5de5\u4f5c\u3002<\/p>\n<p>\u8fd9\u4efd\u6559\u7a0b\u6559\u4f1a\u60a8Github\u7684\u8981\u70b9\u6bd4\u5982\uff1a<i>\u4ed3\u5e93\uff0c\u5206\u652f\uff0c\u63d0\u4ea4\u4ee5\u53capull request\uff08\u5f15\u5165\u8bf7\u6c42\uff09\u3002<\/i>\u60a8\u5c06\u521b\u5efa\u60a8\u7684Hello World\u4ed3\u5e93\u4ee5\u53ca\u5b66\u4e60GitHub\u7684pull request\u6d41\u7a0b\uff0c\u8fd9\u662f\u4e00\u79cd\u6d41\u884c\u7684\u65b9\u5f0f\u6765\u521b\u5efa\u548c\u68c0\u9605\u4ee3\u7801\u3002<\/p>\n<h4>No coding necessary \u65e0\u9700\u7f16\u7a0b<\/h4>\n<p>To complete this tutorial, you need a\u00a0<a href=\"http:\/\/github.com\/\">GitHub.com account<\/a>\u00a0and Internet access. You don\u2019t need to know how to code, use the command line, or install Git (the version control software GitHub is built on).<\/p>\n<p>\u8981\u5b8c\u6210\u8fd9\u4efd\u6559\u7a0b\uff0c\u60a8\u9700\u8981\u80fd\u8bbf\u95ee\u4e92\u8054\u7f51\u5e76\u6709\u4e00\u4e2a\u00a0<a href=\"http:\/\/github.com\/\">GitHub.com<\/a>\u8d26\u6237\u3002\u60a8\u65e0\u9700\u77e5\u9053\u5982\u4f55\u7f16\u7a0b\uff0c\u4ee5\u53ca\u4f7f\u7528\u547d\u4ee4\u884c\uff0c\u6216\u5b89\u88c5Git\uff08\u4f5c\u4e3a\u4e00\u4e2a\u7248\u672c\u63a7\u5236\u8f6f\u4ef6Github\u5185\u7f6e\u4e86Git)<\/p>\n<blockquote><p><strong>Tip:<\/strong>\u00a0Open this guide in a separate browser window (or tab) so you can see it while you complete the steps in the tutorial.<\/p>\n<p>\u63d0\u793a\uff1a\u60a8\u53ef\u4ee5\u5c06\u6559\u7a0b\u4f5c\u4e3a\u4e00\u4e2a\u6807\u7b7e\u9875\u5206\u5f00\u6253\u5f00\u5728\u6d4f\u89c8\u5668\u7a97\u53e3\uff0c\u8fd9\u6837\u60a8\u53ef\u4ee5\u5728\u5b8c\u6210\u6559\u7a0b\u7684\u8fc7\u7a0b\u4e2d\u59cb\u7ec8\u770b\u5230\u6559\u7a0b\u3002<\/p><\/blockquote>\n<h3>Step 1. Create a Repository \u6b65\u9aa41.\u521b\u5efa\u4e00\u4e2a\u4ed3\u5e93<\/h3>\n<p>A\u00a0<strong>repository<\/strong>\u00a0is usually used to organize a single project. Repositories can contain folders and files, images, videos, spreadsheets, and data sets \u2013 anything your project needs. We recommend including a\u00a0<em>README<\/em>, or a file with information about your project. GitHub makes it easy to add one at the same time you create your new repository.\u00a0<em>It also offers other common options such as a license file.<\/em><\/p>\n<p>Your\u00a0hello-world\u00a0repository can be a place where you store ideas, resources, or even share and discuss things with others.<\/p>\n<p>\u4ed3\u5e93\u901a\u5e38\u7528\u4e8e\u7ec4\u7ec7\u4e00\u4e2a\u72ec\u7acb\u7684\u9879\u76ee\u3002\u4ed3\u5e93\u53ef\u4ee5\u5305\u542b\u6587\u4ef6\u5939\u548c\u6587\u4ef6\uff0c\u56fe\u7247\uff0c\u89c6\u9891\uff0c\u7535\u5b50\u8868\u683c\uff0c\u6570\u636e\u96c6-\u60a8\u9879\u76ee\u6240\u9700\u7684\u4e00\u5207\u3002\u6211\u4eec\u5efa\u8bae\u5305\u542b\u4e00\u4e2a<i>README\u81ea\u8ff0\u6587\u4ef6\uff0c<\/i>\u6216\u8005\u4e00\u4e2a\u63cf\u8ff0\u60a8\u9879\u76ee\u4fe1\u606f\u7684\u6587\u4ef6\u3002GitHub\u4f1a\u5728\u60a8\u521b\u5efa\u65b0\u4ed3\u5e93\u65f6\u63d0\u793a\u60a8\u521b\u5efa\u4e00\u4e2a\u3002<i>\u8fd8\u4f1a\u63d0\u8bae\u60a8\u8bb8\u53ef\u8bc1\u6587\u4ef6\u3002<\/i><\/p>\n<h3>To create a new repository \u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u4ed3\u5e93<\/h3>\n<ol>\n<li>In the upper right corner, next to your username, click\u00a0\u00a0and then click\u00a0<strong>New repository<\/strong>. \u5728\u5c4f\u5e55\u53f3\u4e0a\u89d2\uff0c\u60a8\u7528\u6237\u540d\u4e4b\u524d\uff0c\u70b9\u51fb+\u53f7\uff0c\u5e76\u70b9\u51fbNew repository(\u65b0\u5efa\u4ed3\u5e93\uff09.<\/li>\n<li>Name your repository\u00a0hello-world. \u7ed9\u60a8\u7684\u65b0\u4ed3\u5e93\u547d\u540d\u4e3a hello-world<\/li>\n<li>Write a short description. \u5199\u4e00\u4efd\u7b80\u77ed\u7684\u63cf\u8ff0\u3002<\/li>\n<li>Select\u00a0<strong>Initialize this repository with a README<\/strong>. \u52fe\u9009\u521d\u59cb\u5316\u4ed3\u5e93\u5305\u542b\u4e00\u4e2aREADME\u81ea\u8ff0\u6587\u4ef6\u3002<\/li>\n<\/ol>\n<\/div>\n<p><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/e9a0e0d46e7741ac80cee13836bd9332\/ate-new-repo.png\" alt=\"new-repo-form\" data-media-type=\"image\" data-attr-org-src-id=\"DCA93EC5AAE84A8C8A5388502DCF281A\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/e9a0e0d46e7741ac80cee13836bd9332\/ate-new-repo.png\" \/><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/e9a0e0d46e7741ac80cee13836bd9332\/ate-new-repo.png\" alt=\"new-repo-form\" data-media-type=\"image\" data-attr-org-src-id=\"DCA93EC5AAE84A8C8A5388502DCF281A\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/e9a0e0d46e7741ac80cee13836bd9332\/ate-new-repo.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/create-new-repo.png\" alt=\"new-repo-form\" width=\"632\" height=\"383\" \/><\/p>\n<\/div>\n<p>Click\u00a0<strong>Create repository<\/strong>.\u00a0<img loading=\"lazy\" decoding=\"async\" title=\":tada:\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/95e496a24bee4d78a16d135699b2733f\/1f389.png\" alt=\":tada:\" width=\"20\" height=\"20\" data-media-type=\"image\" data-attr-org-src-id=\"1C64F1DD7F264E02976C12B01CAB4A68\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/95e496a24bee4d78a16d135699b2733f\/1f389.png\" \/>\u00a0\u70b9\u51fb Create repository\u6309\u94ae.<\/p>\n<h3>Step 2. Create a Branch \u6b65\u9aa42.\u521b\u5efa\u4e00\u4e2a\u5206\u652f<\/h3>\n<p><strong>Branching<\/strong>\u00a0is the way to work on different versions of a repository at one time.<\/p>\n<p>By default your repository has one branch named\u00a0master\u00a0which is considered to be the definitive branch. We use branches to experiment and make edits before committing them to\u00a0master.<\/p>\n<p>When you create a branch off the\u00a0master\u00a0branch, you\u2019re making a copy, or snapshot, of\u00a0master\u00a0as it was at that point in time. If someone else made changes to the\u00a0master\u00a0branch while you were working on your branch, you could pull in those updates.<\/p>\n<p>\u5206\u652f\u662f\u4e00\u79cd\u5728\u4ed3\u5e93\u540c\u65f6\u8fdb\u884c\u4e0d\u540c\u7248\u672c\u5de5\u4f5c\u7684\u65b9\u6cd5\u3002<\/p>\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u60a8\u4ed3\u5e93\u4e2d\u6709\u4e2a\u540d\u4e3amaster\u7684\u5206\u652f\uff0c\u8fd9\u662f\u4e00\u4e2a\u4e3b\u8981\u7684\u51b3\u5b9a\u6027\u7684\u5206\u652f\u3002\u5728\u5b83\u4eec\u63d0\u4ea4\u5230master\u5206\u652f\u4e4b\u524d\u6211\u4eec\u4f7f\u7528\u5206\u652f\u6765\u5b9e\u9a8c\u548c\u8fdb\u884c\u7f16\u8f91\u3002<\/p>\n<p>\u5f53\u60a8\u4ecemaster\u521b\u5efa\u4e86\u53e6\u4e00\u4e2a\u7684\u5206\u652f\u65f6\uff0c\u76f8\u5f53\u4e8e\u60a8\u4e3a\u5f53\u524d\u7684mstart\u5206\u652f\u5236\u4f5c\u4e86\u4e00\u4efd\u62f7\u8d1d\uff0c\u6216\u5feb\u7167\u3002\u5f53\u60a8\u5de5\u4f5c\u5728\u60a8\u7684\u5206\u652f\u65f6\uff0c\u5982\u679c\u6709\u4e9b\u4eba\u5bf9master\u5206\u652f\u8fdb\u884c\u4e86\u4e00\u4e9b\u6539\u52a8\uff0c\u60a8\u53ef\u4ee5\u5408\u5e76\u8fd9\u4e9b\u66f4\u65b0\u3002<\/p>\n<p>This diagram shows: \u4e0b\u9762\u7684\u56fe\u8868\u5c55\u793a\u4e86\uff1a<\/p>\n<ul>\n<li>The\u00a0master\u00a0branch \u4e3b\u5206\u652f<\/li>\n<li>A new branch called\u00a0feature\u00a0(because we\u2019re doing \u2018feature work\u2019 on this branch) \u540d\u4e3afeature\u7684\u5fc3\u5206\u652f \uff08\u8fd9\u662f\u56e0\u4e3a\u6211\u4eec\u505a\u4e86&#8217;feature work&#8217;\u5728\u8fd9\u4e2a\u5206\u652f\uff09<\/li>\n<li>The journey that\u00a0feature\u00a0takes before it\u2019s merged into\u00a0master \u00a0. feature \u5408\u5e76\u5230master\u524d\u7684\u884c\u7a0b<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c151c38350df4e909d68d9ca480c6bc0\/branching.png\" alt=\"a branch\" data-media-type=\"image\" data-attr-org-src-id=\"E6FD95AF218444B7A1EA6D5F2852A1CB\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c151c38350df4e909d68d9ca480c6bc0\/branching.png\" \/><\/p>\n<p>Have you ever saved different versions of a file? Something like: \u60a8\u662f\u5426\u66fe\u7ecf\u4e3a\u6587\u4ef6\u4fdd\u5b58\u8fc7\u4e0d\u7528\u7684\u7248\u672c\uff1f\u6bd4\u5982\uff1a<\/p>\n<ul>\n<li><code>story.txt<\/code><\/li>\n<li><code>story-joe-edit.txt<\/code><\/li>\n<li><code>story-joe-edit-reviewed.txt<\/code><\/li>\n<\/ul>\n<p>Branches accomplish similar goals in GitHub repositories.<\/p>\n<p>\u5206\u652f\u5728GitHub\u4ed3\u5e93\u4e2d\uff0c\u5b8c\u6210\u4e86\u7c7b\u4f3c&#8221;\u7248\u672c\u63a7\u5236&#8221;\u7684\u76ee\u6807.<\/p>\n<p>Here at GitHub, our developers, writers, and designers use branches for keeping bug fixes and feature work separate from our\u00a0master\u00a0(production) branch. When a change is ready, they merge their branch into\u00a0master.<\/p>\n<p>\u5728GitHub\u6211\u4eec\u7684\u5f00\u53d1\u8005\uff0c\u4f5c\u8005\uff0c\u8bbe\u8ba1\u5e08\u4f7f\u7528\u5206\u652f\u6765\u4fee\u590dbug\u548c\u5206\u5de5\u534f\u4f5c\u3002\u5f53\u6539\u52a8\u51c6\u5907\u597d\u4e86\uff0c\u4ed6\u4eec\u5c31\u5408\u5e76\u4ed6\u4eec\u7684\u5206\u652f\u5230master.<\/p>\n<h3>To create a new branch \u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u5206\u652f<\/h3>\n<ol>\n<li>Go to your new repository\u00a0hello-world. \u8fdb\u5165\u5230\u60a8\u7684\u4ed3\u5e93 hello-world.<\/li>\n<li>Click the drop down at the top of the file list that says\u00a0<strong>branch: master<\/strong>. \u70b9\u51fb\u9876\u90e8\u7684\u6587\u4ef6\u5217\u8868 \uff1amaster<\/li>\n<li>Type a branch name,\u00a0readme-edits, into the new branch text box. \u8f93\u5165\u5206\u652f\u540d\u79f0,readme-edits \u5230\u65b0\u7684\u5206\u652f\u7684\u6587\u672c\u8f93\u5165\u533a<\/li>\n<li>Select the blue\u00a0<strong>Create branch<\/strong>\u00a0box or hit \u201cEnter\u201d on your keyboard. \u9009\u62e9\u84dd\u8272\u7684Create branch \u6216\u8005\u56de\u8f66\u3002<\/li>\n<\/ol>\n<p><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/7cba655738364be4bbffe45a1f1c68c8\/readme-edits.gif\" alt=\"branch gif\" data-media-type=\"image\" data-attr-org-src-id=\"CF45D6283C8D47D4891A65F6E769B665\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/7cba655738364be4bbffe45a1f1c68c8\/readme-edits.gif\" \/><\/p>\n<p>Now you have two branches,\u00a0master\u00a0and\u00a0readme-edits. They look exactly the same, but not for long! Next we\u2019ll add our changes to the new branch.<\/p>\n<p>\u73b0\u5728\u60a8\u6709\u4e862\u4e2a\u5206\u652f\uff0cmaster\u548creadme-edits. \u4ed6\u4eec\u76ee\u524d\u770b\u4e0a\u53bb\u662f\u4e00\u6837\u7684\uff0c\u63a5\u4e0b\u6765\u6211\u4eec\u4f1a\u589e\u52a0\u53d8\u5316\u5230\u65b0\u7684\u5206\u652f\u3002<\/p>\n<h3>Step 3. Make and commit changes \u6b65\u9aa43.\u505a\u51fa\u66f4\u6539\u5e76\u63d0\u4ea4<\/h3>\n<p>Bravo! Now, you\u2019re on the code view for your\u00a0readme-edits\u00a0branch, which is a copy of\u00a0master. Let\u2019s make some edits.<\/p>\n<p>On GitHub, saved changes are called\u00a0<em>commits<\/em>. Each commit has an associated\u00a0<em>commit message<\/em>, which is a description explaining why a particular change was made. Commit messages capture the history of your changes, so other contributors can understand what you\u2019ve done and why.<\/p>\n<p>\u592a\u68d2\u4e86\uff01\u73b0\u5728\u60a8\u4f4d\u4e8e\u60a8readme-edits\u5206\u652f\u7684\u4ee3\u7801\u9884\u89c8\u9875\u9762\uff0c\u5b83\u662fmaster\u5206\u652f\u7684\u62f7\u8d1d\u3002\u8ba9\u6211\u4eec\u505a\u4e00\u4e9b\u7f16\u8f91\u3002<\/p>\n<p>\u5728GitHub, \u4fdd\u5b58\u66f4\u6539\u88ab\u79f0\u4e3a <i>commits\u63d0\u4ea4\u3002<\/i>\u6bcf\u4e2a\u63d0\u4ea4\u90fd\u6709\u76f8\u5173\u8054\u7684\u63d0\u4ea4\u4fe1\u606f\uff0c\u5b83\u63cf\u8ff0\u89e3\u91ca\u4e86\u4e3a\u4f55\u8981\u505a\u6b64\u66f4\u6539\u3002\u63d0\u4ea4\u4fe1\u606f\u4fdd\u7559\u4e86\u60a8\u7684\u66f4\u6539\u5386\u53f2\uff0c\u8fd9\u6837\u5176\u4ed6\u7684\u8d21\u732e\u8005\u53ef\u4ee5\u7406\u89e3\u60a8\u6240\u505a\u7684\u4ee5\u53ca\u4e3a\u4f55\u8981\u8fd9\u6837\u505a\u3002<\/p>\n<h4>Make and commit changes \u505a\u51fa\u66f4\u6539\u5e76\u63d0\u4ea4<\/h4>\n<ol>\n<li>Click the\u00a0<code>README.md<\/code>\u00a0file. \u70b9\u51fbREADME.md \u6587\u4ef6<\/li>\n<li>Click the\u00a0\u00a0pencil icon in the upper right corner of the file view to edit. \u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u94c5\u7b14\u56fe\u6807\u6765\u7f16\u8f91 <i>\u9f20\u6807\u505c\u7559\u5728 \u8fd9\u4e2a \u56fe\u6807 \u4e0a \u65f6 \u4f1a\u51fa\u73b0 Edit this file\u7684\u63d0\u793a<\/i><\/li>\n<li>In the editor, write a bit about yourself. \u5728\u7f16\u8f91\u5668\u4e2d\uff0c\u5199\u4e0b\u4e00\u4e9b\u4ecb\u7ecd\u60a8\u81ea\u5df1\u7684\u5185\u5bb9\u3002<\/li>\n<li>Write a commit message that describes your changes. \u5199\u4e0b\u63d0\u4ea4\u4fe1\u606f\u63cf\u8ff0\u60a8\u7684\u6539\u52a8\u3002<\/li>\n<li>Click\u00a0<strong>Commit changes<\/strong>\u00a0button. \u70b9\u51fb Commit changes \u6309\u94ae\u3002<\/li>\n<\/ol>\n<p><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/4b8c1dd7084d442c9795edda8ffea3f6\/commit.png\" alt=\"commit\" data-media-type=\"image\" data-attr-org-src-id=\"F7F52748F7FB472A99CF1E25BE12E789\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/4b8c1dd7084d442c9795edda8ffea3f6\/commit.png\" \/><\/p>\n<p>These changes will be made to just the README file on your\u00a0readme-editsbranch, so now this branch contains content that\u2019s different from\u00a0master. \u8fd9\u4e9b\u6539\u52a8\u4f1a\u5e94\u7528\u4e8ereadme-edits\u5206\u652f\u7684README\u6587\u4ef6\uff0c\u73b0\u5728\u8fd9\u4e2a\u5206\u652f\u7684\u5185\u5bb9\u548cmaster\u5206\u652f\u5c31\u6709\u6240\u4e0d\u540c\u4e86\u3002<\/p>\n<h3>Step 4. Open a Pull Request \u6b65\u9aa44. \u6253\u5f00\u4e00\u4e2aPull Request<\/h3>\n<p>Nice edits! Now that you have changes in a branch off of\u00a0master, you can open a\u00a0pull request.<\/p>\n<p>\u505a\u5f97\u6f02\u4eae\uff01\u73b0\u5728\u6211\u4eec\u53ef\u4ee5\u6253\u5f00 pull request\u4e86\u3002<\/p>\n<p>Pull Requests are the heart of collaboration on GitHub. When you open a\u00a0<em>pull request<\/em>, you\u2019re proposing your changes and requesting that someone review and pull in your contribution and merge them into their branch. Pull requests show<em>diffs<\/em>, or differences, of the content from both branches. The changes, additions, and subtractions are shown in green and red.<\/p>\n<p>Pull Requests\u662fGitHub\u534f\u540c\u5de5\u4f5c\u7684\u6838\u5fc3\u3002\u5f53\u60a8\u6253\u5f00\u4e00\u4e2apull request\uff0c\u60a8\u63d0\u4ea4\u60a8\u7684\u66f4\u6539\u4ee5\u53ca\u8bf7\u6c42\uff0c\u6709\u4eba\u5ba1\u9605\u5e76\u628a\u60a8\u7684\u8d21\u732e\u5f15\u5165\u3001\u7136\u540e\u5408\u5e76\u5b83\u4eec\u5230\u4ed6\u4eec\u7684\u5206\u652f\u4e2d\u3002Pull request\u4f1a\u5728\u6bcf\u4e2a\u5206\u652f\u663e\u793a\u5176\u6539\u53d8\u4e4b\u5904\u3002\u66f4\u6539\uff0c\u589e\u52a0\u548c\u51cf\u5c11\u7684\u90e8\u5206\u5206\u522b\u663e\u793a\u4e3a\u7eff\u8272\u548c\u7ea2\u8272\u3002<\/p>\n<p>As soon as you make a commit, you can open a pull request and start a discussion, even before the code is finished. \u5f53\u60a8\u7684\u4ee3\u7801\u5b8c\u6210\u540e\uff0c\u60a8\u7acb\u5373\u53ef\u4ee5\u505a\u51fa\u4e00\u4e2acommit\u63d0\u4ea4\uff0c\u60a8\u53ef\u4ee5\u6253\u5f00pull request\u5e76\u8fdb\u884c\u8ba8\u8bba\u3002<\/p>\n<p>By using GitHub\u2019s\u00a0<a href=\"https:\/\/help.github.com\/articles\/about-writing-and-formatting-on-github\/#text-formatting-toolbar\">@mention system<\/a>\u00a0in your pull request message, you can ask for feedback from specific people or teams, whether they\u2019re down the hall or 10 time zones away.<\/p>\n<p>\u901a\u8fc7\u5728\u60a8\u7684pull request\u4fe1\u606f\u4e2d \u4f7f\u7528GitHub\u7684\u00a0<a href=\"https:\/\/help.github.com\/articles\/about-writing-and-formatting-on-github\/#text-formatting-toolbar\">@mention system<\/a>\u00a0\uff0c\u60a8\u53ef\u4ee5\u4ece\u67d0\u4e2a\u6307\u5b9a\u4eba\u5458\u6216\u8005\u5c0f\u7ec4\u53d6\u5f97\u56de\u9988\u00a0\uff0c\u4e0d\u8bba\u4ed6\u4eec\u662f\u5728\u5ba2\u5385\u6216\u662f10\u5c0f\u65f6\u65f6\u5dee\u4e4b\u5916\u3002<\/p>\n<p>You can even open pull requests in your own repository and merge them yourself. It\u2019s a great way to learn the GitHub Flow before working on larger projects.<\/p>\n<p>\u60a8\u8fd8\u53ef\u4ee5\u6253\u5f00pull requests\u5728\u60a8\u81ea\u5df1\u7684\u4ed3\u5e93\u5e76\u5408\u5e76\u4ed6\u4eec\u3002\u5728\u4e3a\u66f4\u5927\u7684\u9879\u76ee\u5de5\u4f5c\u4e4b\u524d\uff0c\u8fd9\u662f\u4e00\u4e2a\u5f88\u597d\u7684\u5b66\u4e60GitHub\u5de5\u4f5c\u6d41\u7684\u65b9\u6cd5\u3002<\/p>\n<h4>Open a Pull Request for changes to the README \u4e3a\u66f4\u6539\u540e\u7684README \u6253\u5f00Pull Request<\/h4>\n<\/div>\n<p>1: Click the\u00a0\u00a0<strong>Pull Request<\/strong>\u00a0tab, then from the Pull Request page, click the green\u00a0<strong>New pull request<\/strong>\u00a0button.\u70b9\u51fb\u00a0<strong>Pull Request<\/strong>\u00a0\u6807\u7b7e\u9875, \u70b9\u51fb\u7eff\u8272\u7684\u00a0<strong>New pull request<\/strong>\u00a0\u6309\u94ae.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/pr-tab.gif\" alt=\"pr-tab\" width=\"659\" height=\"178\" \/><\/p>\n<p>2:\u00a0Select the branch you made,readme-edits, to compare with\u00a0master\u00a0(the original).\u9009\u62e9\u60a8\u7684\u5206\u652f,readme-edits,\u548c\u00a0master\u6bd4\u8f83\u00a0(\u539f\u59cb\u5206\u652f).<\/p>\n<p><a href=\"https:\/\/guides.github.com\/activities\/hello-world\/pick-branch.png\"><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/pick-branch.png\" alt=\"branch\" width=\"501\" height=\"131\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>3:Look over your changes in the diffs on the Compare page, make sure they\u2019re what you want to submit. \u5728\u5bf9\u6bd4\u9875\u9762\u67e5\u770b\u60a8\u7684\u66f4\u6539\uff0c\u786e\u8ba4\u4ed6\u4eec\u662f\u60a8\u60f3\u63d0\u4ea4\u7684\u3002<\/p>\n<p><a href=\"https:\/\/guides.github.com\/activities\/hello-world\/diff.png\"><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/diff.png\" alt=\"diff\" width=\"597\" height=\"583\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>4:When you\u2019re satisfied that these are the changes you want to submit, click the big green<strong>Create Pull Request<\/strong>button. \u00a0\u5f53\u60a8\u5bf9\u8fd9\u4e9b\u6539\u52a8\u6ee1\u610f\u540e\uff0c\u70b9\u51fb\u7eff\u8272\u7684Create Pull Request\u6309\u94ae\u3002<\/p>\n<p><a href=\"https:\/\/guides.github.com\/activities\/hello-world\/create-pr.png\"><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/create-pr.png\" alt=\"create-pull\" width=\"599\" height=\"308\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>5:Give your pull request a title and write a brief description of your changes. \u7ed9\u60a8\u7684\u6b64\u6b21\u63d0\u4ea4\u5408\u5e76\u4e00\u4e2a\u6807\u9898\uff0c\u5e76\u5bf9\u66f4\u6539\u4f5c\u51fa\u7b80\u77ed\u7684\u63cf\u8ff0<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"\" src=\"https:\/\/guides.github.com\/activities\/hello-world\/pr-form.png\" alt=\"pr-form\" width=\"547\" height=\"390\" \/><\/p>\n<p>&nbsp;<\/p>\n<div>\n<div>\n<div>\n<p>When you\u2019re done with your message, click\u00a0<strong>Create pull request<\/strong>! \u5f53\u60a8\u5b8c\u6210\u4e86\u8fd9\u4e9b\u4fe1\u606f\u4e4b\u540e\uff0c\u70b9\u51fbCreate pull request!<\/p>\n<hr \/>\n<blockquote><p><strong>Tip<\/strong>: You can use\u00a0<a href=\"https:\/\/help.github.com\/articles\/basic-writing-and-formatting-syntax\/#using-emoji\">emoji<\/a>\u00a0and\u00a0<a href=\"https:\/\/help.github.com\/articles\/file-attachments-on-issues-and-pull-requests\/\">drag and drop images and gifs<\/a>\u00a0onto comments and Pull Requests.<\/p>\n<p>\u63d0\u793a\uff1a\u60a8\u53ef\u4ee5\u5728\u6ce8\u91ca\u548cPull Requests\u4e2d\u4f7f\u7528\u00a0<a href=\"https:\/\/help.github.com\/articles\/basic-writing-and-formatting-syntax\/#using-emoji\">emoji<\/a>\u00a0\u548c\u00a0<a href=\"https:\/\/help.github.com\/articles\/file-attachments-on-issues-and-pull-requests\/\">drag and drop images and gifs<\/a><\/p><\/blockquote>\n<h3>Step 5. Merge your Pull Request \u5408\u5e76\u60a8\u7684Pull Request<\/h3>\n<p>In this final step, it\u2019s time to bring your changes together \u2013 merging yourreadme-edits\u00a0branch into the\u00a0master\u00a0branch. \u5728\u8fd9\u6700\u540e\u4e00\u6b65\uff0c\u662f\u65f6\u5019\u540c\u6b65\u60a8\u7684\u66f4\u6539\u4e86-\u5408\u5e76 readme-edits \u5230master\u5206\u652f<\/p>\n<ol>\n<li>Click the green\u00a0Merge pull request\u00a0button to merge the changes intomaster. \u70b9\u51fb\u7eff\u8272\u7684Merge pull request \u6309\u94ae\u6765\u5408\u5e76\u66f4\u6539\u5230master\u5206\u652f\u3002<\/li>\n<li>Click\u00a0<strong>Confirm merge<\/strong>. \u70b9\u51fb Confire merge.<\/li>\n<li>Go ahead and delete the branch, since its changes have been incorporated, with the\u00a0<strong>Delete branch<\/strong>\u00a0button in the purple box. \u5f53\u6539\u52a8\u751f\u6548\u540e\uff0c\u4f7f\u7528Delete branch\u6309\u94ae \u5220\u9664\u5206\u652freadme-edits<\/li>\n<\/ol>\n<p><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/f870820a05d443c088cb62da5b0116ca\/merge-button.png\" alt=\"merge\" data-media-type=\"image\" data-attr-org-src-id=\"F5289C21D94844DAB672285A99647302\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/f870820a05d443c088cb62da5b0116ca\/merge-button.png\" \/><img decoding=\"async\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/4931d1d9538d4f80bf2a6b797e223c77\/elete-button.png\" alt=\"delete\" data-media-type=\"image\" data-attr-org-src-id=\"4EC64F0D9F5F4872827945811D5B65E4\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/4931d1d9538d4f80bf2a6b797e223c77\/elete-button.png\" \/><\/p>\n<h3>Celebrate! \u5e86\u795d\uff01<\/h3>\n<p>By completing this tutorial, you\u2019ve learned to create a project and make a pull request on GitHub!\u00a0<img loading=\"lazy\" decoding=\"async\" title=\":tada:\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/95e496a24bee4d78a16d135699b2733f\/1f389.png\" alt=\":tada:\" width=\"20\" height=\"20\" data-media-type=\"image\" data-attr-org-src-id=\"1C64F1DD7F264E02976C12B01CAB4A68\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/95e496a24bee4d78a16d135699b2733f\/1f389.png\" \/>\u00a0<img loading=\"lazy\" decoding=\"async\" title=\":octocat:\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c2caff9a1d4244bf92c37aaf294857e7\/octocat.png\" alt=\":octocat:\" width=\"20\" height=\"20\" data-media-type=\"image\" data-attr-org-src-id=\"B9155D5A8A2A47E3B41E0BE0627AFA17\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c2caff9a1d4244bf92c37aaf294857e7\/octocat.png\" \/>\u00a0<img loading=\"lazy\" decoding=\"async\" title=\":zap:\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/92a9bb3e853b4bc2aebb396823c5a554\/26a1.png\" alt=\":zap:\" width=\"20\" height=\"20\" data-media-type=\"image\" data-attr-org-src-id=\"89BBB2AA93AB4DBB8EA0A77E68B1C82F\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/92a9bb3e853b4bc2aebb396823c5a554\/26a1.png\" \/>\u00a0\u901a\u8fc7\u5b8c\u6210\u8fd9\u4e2a\u8bfe\u7a0b\uff0c\u60a8\u5b66\u4e60\u4e86\u5982\u4f55\u521b\u5efa\u4e00\u4e2a\u9879\u76ee\u4ee5\u53ca\u5728GitHub\u505a\u51fa\u4e00\u4e2apull request<\/p>\n<p>Here\u2019s what you accomplished in this tutorial: \u00a0 \u4e0b\u9762\u662f\u60a8\u5b8c\u6210\u7684\u5185\u5bb9\uff1a<\/p>\n<ul>\n<li>Created an open source repository \u521b\u5efa\u4e00\u4e2a\u5f00\u6e90\u7684\u4ed3\u5e93<\/li>\n<li>Started and managed a new branch \u5f00\u59cb\u7ba1\u7406\u4e00\u4e2a\u5206\u652f<\/li>\n<li>Changed a file and committed those changes to GitHub \u66f4\u6539\u6587\u4ef6\u5185\u5bb9\u5e76\u63d0\u4ea4\u5230GitHub<\/li>\n<li>Opened and merged a Pull Request \u6253\u5f00\u5e76\u5408\u5e76\u4e00\u4e2aPull Request<\/li>\n<\/ul>\n<p>Take a look at your GitHub profile and you\u2019ll see your new\u00a0<a href=\"https:\/\/help.github.com\/articles\/viewing-contributions\">contribution squares<\/a>! \u770b\u770b\u60a8\u5728GitHub\u4e2d\u7684your profile\u914d\u7f6e\u6587\u4ef6\uff0c\u4f1a\u770b\u5230\u60a8\u7684\u8d21\u732e\uff01<\/p>\n<p>If you want to learn more about the power of pull requests, we recommend reading the\u00a0<a href=\"http:\/\/guides.github.com\/overviews\/flow\/\">GitHub Flow Guide<\/a>. You might also visit\u00a0<a href=\"http:\/\/github.com\/explore\">GitHub Explore<\/a>\u00a0and get involved in an Open Source project\u00a0<img loading=\"lazy\" decoding=\"async\" title=\":octocat:\" src=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c2caff9a1d4244bf92c37aaf294857e7\/octocat.png\" alt=\":octocat:\" width=\"20\" height=\"20\" data-media-type=\"image\" data-attr-org-src-id=\"B9155D5A8A2A47E3B41E0BE0627AFA17\" data-attr-org-img-file=\"file:\/\/\/C:\/Users\/Steve\/AppData\/Local\/YNote\/data\/join330@126.com\/c2caff9a1d4244bf92c37aaf294857e7\/octocat.png\" \/><\/p>\n<p>\u5982\u679c\u60a8\u60f3\u4e86\u89e3\u66f4\u591a\u5173\u4e8epull requests\u7684\u77e5\u8bc6\uff0c\u6211\u4eec\u5efa\u8bae\u60a8\u9605\u8bfb\u00a0<a href=\"http:\/\/guides.github.com\/overviews\/flow\/\">GitHub Flow Guide<\/a>. \u60a8\u8fd8\u53ef\u4ee5\u6d4f\u89c8<a href=\"http:\/\/github.com\/explore\">GitHub Explore<\/a>\u00a0\u53c2\u4e0e\u4e00\u4e2a\u5f00\u6e90\u9879\u76ee\u3002<\/p>\n<hr \/>\n<blockquote><p><strong>Tip<\/strong>: Check out our other\u00a0<a href=\"http:\/\/guides.github.com\/\">Guides<\/a>\u00a0and\u00a0<a href=\"http:\/\/youtube.com\/githubguides\">YouTube Channel<\/a>\u00a0for more GitHub how-tos.<\/p>\n<p>\u63d0\u793a\uff1a\u9605\u89c8\u6211\u4eec\u5176\u4ed6\u00a0<a href=\"http:\/\/guides.github.com\/\">\u624b\u518c<\/a>\u00a0\u548c\u00a0<a href=\"http:\/\/youtube.com\/githubguides\">YouTube \u9891\u9053<\/a>\u00a0\u00a0\u83b7\u5f97\u66f4\u591a\u7684GitHub how-tos.<\/p><\/blockquote>\n<\/div>\n<div><\/div>\n<\/div>\n<div>\n<div>\n<div>Git \u548c GitHub\u7684\u5176\u4ed6\u4e2d\u6587\u8d44\u6599\u8fd8\u53ef\u53c2\u8003\uff1a<\/div>\n<div><\/div>\n<div>\u548c \uff1a<a href=\"http:\/\/www.linuxidc.com\/Linux\/2011-04\/35036.htm\">http:\/\/www.linuxidc.com\/Linux\/2011-04\/35036.htm<\/a><\/div>\n<div>\u4ee5\u53ca\uff1a<a href=\"https:\/\/www.zhihu.com\/question\/21682976\">https:\/\/www.zhihu.com\/question\/21682976<\/a><\/div>\n<div><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>\n<div>\u00a0\u4ee5\u4e0a\uff0c\u7b97\u662f\u4e00\u4e2a\u4e86\u89e3\u4e0b\u5982\u4f55\u4f7f\u7528GitHub\u7684\u00a0\u7248\u672c\u63a7\u5236\u00a0\u7684\u00a0\u5165\u95e8\u6559\u7a0b\u00a0\uff0c<\/div>\n<div>\n<div>\u6574\u7bc7\u8bfe\u7a0b\u76f8\u5bf9\u76f4\u89c2\uff0c\u6ca1\u6253\u4efb\u4f55\u547d\u4ee4\uff0c\u5e94\u8be5\u80fd\u8ba9\u8bfb\u8005\u52a0\u6df1\u7406\u89e3repository\uff0c\u00a0branch,commit ,Pull Request \u8fd9\u4e9b\u672f\u8bed\u3002<\/div>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u6211\u4eec\u4fdd\u7559\u4e86\u82f1\u6587\u539f\u6587\uff0c\u5728\u4e16\u754c\u65e5\u8d8b\u6241\u5e73\u5316\u7684\u4eca\u5929\uff0c\u65b9\u4fbf\u5927\u5bb6\u5b66\u4e60\u82f1\u8bed\uff0c\u66f4\u662f\u4e3a\u4e86\u65b9\u4fbf\u5927\u5bb6\u63d0\u51fa\u4fee\u6539\u610f\u89c1\u548c\u5efa\u8bae\u3002<\/div>\n<div><\/div>\n<p>\u8c22\u8c22\u5927\u5bb6\u3002<\/p>\n<\/div>\n<div><\/div>\n<div><\/div>\n<div><\/div>\n<div>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u4ee5\u4e0a\u6587\u6863\u53ca\u6d4b\u8bd5\u8017\u65f63\u5c0f\u65f6\uff0c\u5353\u5fc6\u79d1\u6280\uff0c2016-3-20\u65e5<\/div>\n<\/div>\n<div><\/div>\n<div>\n<p>\u540e\u7eed\u6587\u6863\u53ef\u770b\uff1a<\/p>\n<h3><a title=\"\u8be6\u7ec6\u9605\u8bfb \u5353\u5fc6\u6574\u7406\uff1aWindows\u4e0bgit\u5e38\u7528\u5165\u95e8\u547d\u4ee4\u7684\u4f7f\u7528\uff0c\u7528git\u6765\u5bf9Odoo\u5f00\u53d1\u8fdb\u884c\u7248\u672c\u7ba1\u7406\" href=\"http:\/\/www.jointd.com\/?p=2815\" rel=\"bookmark\">\u5353\u5fc6\u6574\u7406\uff1aWindows\u4e0bgit\u5e38\u7528\u5165\u95e8\u547d\u4ee4\u7684\u4f7f\u7528\uff0c\u7528git\u6765\u5bf9Odoo\u5f00\u53d1\u8fdb\u884c\u7248\u672c\u7ba1\u7406<\/a><\/h3>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u5353\u5fc6\u7ffb\u8bd1\uff1a\u4e2d\u82f1\u5bf9\u7167\uff1aGit\u53caGithub(Odoo\u4ee3\u7801\u6240\u5728\u5e73\u53f0\uff09\u5b98\u65b9\u5165\u95e8\u6559\u7a0b\u7ffb\u8bd1 Odoo\u4ee3\u7801\uff1ahttps:\/ [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,1,7],"tags":[308,309,314,310,311,312,313],"class_list":{"0":"post-2810","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"hentry","6":"category-6","7":"category-support","8":"category-7","9":"tag-git","10":"tag-github","11":"tag-learn-git-and-github-without-any-code","12":"tag-odoo","14":"tag-312","15":"tag-313"},"views":3769,"_links":{"self":[{"href":"https:\/\/www.jointd.com\/index.php?rest_route=\/wp\/v2\/posts\/2810","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jointd.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jointd.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jointd.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jointd.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2810"}],"version-history":[{"count":0,"href":"https:\/\/www.jointd.com\/index.php?rest_route=\/wp\/v2\/posts\/2810\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jointd.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jointd.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jointd.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}