[{"data":1,"prerenderedAt":2795},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2023-12-29-git-jiao-xue\u002F0200-git-shi-cao":3,"wiki-doc-items-2023-12-29-git-jiao-xue":2757,"wiki:author-members":2783},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":2743,"chapterOrder":2744,"date":2745,"description":31,"docKey":2746,"docRoot":2747,"docTitle":2748,"extension":2749,"isWikiDoc":2750,"isWikiIndex":2751,"meta":2752,"navigation":2750,"path":2753,"seo":2754,"stem":2755,"wikiDepth":39,"__hash__":2756},"wiki\u002Fwiki\u002F2023-12-29-Git教学\u002F0200-Git实操.md","Git实操",[7],"董佳辉",{"type":9,"value":10,"toc":2737},"minimark",[11,15,25,74,81,84,89,112,117,121,156,160,172,177,181,199,204,207,239,244,247,252,255,260,263,268,271,283,288,291,294,297,311,316,319,347,352,355,367,372,381,385,422,427,432,435,446,477,482,487,492,509,514,519,522,530,550,555,574,579,591,596,599,605,636,641,647,671,676,682,700,705,708,714,735,740,746,763,768,771,776,804,809,814,819,838,843,848,873,878,883,886,891,913,918,923,928,958,963,968,973,986,991,994,998,1012,1017,1022,1027,1032,1035,1040,1043,1048,1053,1058,1061,1066,1071,1076,1081,1114,1119,1122,1130,1135,1154,1159,1164,1169,1174,1189,1194,1199,1211,1216,1219,1227,1232,1237,1240,1243,1248,1251,1256,1261,1266,1269,1275,1280,1286,1298,1303,1309,1329,1334,1340,1352,1357,1363,1373,1378,1382,1385,1390,1427,1433,1438,1449,1456,1459,1467,1472,1483,1507,1512,1531,1541,1546,1551,1565,1570,1573,1588,1594,1599,1604,1611,1616,1621,1624,1634,1639,1641,1647,1652,1658,1688,1691,1696,1702,1707,1712,1723,1728,1733,1738,1745,1750,1755,1789,1794,1798,1805,1808,1851,1862,1914,1917,1939,1945,1949,1953,1956,1960,1966,1970,1975,1978,1983,1988,1992,1997,2002,2005,2009,2014,2018,2023,2026,2030,2035,2038,2042,2047,2052,2055,2060,2063,2067,2072,2075,2080,2083,2088,2093,2095,2100,2105,2110,2114,2127,2132,2137,2142,2147,2152,2157,2162,2166,2169,2175,2180,2190,2195,2200,2207,2212,2217,2227,2231,2236,2241,2246,2251,2256,2259,2264,2285,2290,2295,2298,2303,2308,2322,2327,2332,2335,2366,2377,2382,2389,2394,2399,2402,2405,2410,2415,2418,2423,2430,2435,2438,2443,2446,2451,2454,2459,2464,2471,2476,2481,2487,2492,2497,2500,2505,2508,2512,2519,2525,2528,2533,2538,2541,2546,2549,2563,2566,2584,2587,2592,2597,2602,2605,2610,2613,2618,2621,2626,2631,2634,2639,2642,2648,2653,2671,2676,2679,2684,2687,2692,2699,2704,2707,2712,2715,2720,2723,2728,2733],[12,13,14],"h3",{"id":14},"环境准备",[16,17,18,22],"ol",{},[19,20,21],"li",{},"操作系统: Linux,Windows,MacOS(本文以Linux为教程)",[19,23,24],{},"安装Git",[26,27,32],"pre",{"className":28,"code":29,"language":30,"meta":31,"style":31},"language-bash shiki shiki-themes github-light github-dark","sudo apt-get update\nsudo apt-get install git\ngit --version\n","bash","",[33,34,35,51,64],"code",{"__ignoreMap":31},[36,37,40,44,48],"span",{"class":38,"line":39},"line",1,[36,41,43],{"class":42},"sScJk","sudo",[36,45,47],{"class":46},"sZZnC"," apt-get",[36,49,50],{"class":46}," update\n",[36,52,54,56,58,61],{"class":38,"line":53},2,[36,55,43],{"class":42},[36,57,47],{"class":46},[36,59,60],{"class":46}," install",[36,62,63],{"class":46}," git\n",[36,65,67,70],{"class":38,"line":66},3,[36,68,69],{"class":42},"git",[36,71,73],{"class":72},"sj4cs"," --version\n",[75,76,77],"p",{},[78,79],"img",{"alt":31,"src":80},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage2.webp",[12,82,83],{"id":83},"常用指令介绍",[85,86,88],"h4",{"id":87},"linux创建目录并进入目录","Linux创建目录&&并进入目录",[26,90,92],{"className":28,"code":91,"language":30,"meta":31,"style":31},"mkdir -p hellogit\ncd hellogit\n",[33,93,94,105],{"__ignoreMap":31},[36,95,96,99,102],{"class":38,"line":39},[36,97,98],{"class":42},"mkdir",[36,100,101],{"class":72}," -p",[36,103,104],{"class":46}," hellogit\n",[36,106,107,110],{"class":38,"line":53},[36,108,109],{"class":72},"cd",[36,111,104],{"class":46},[75,113,114],{},[78,115],{"alt":31,"src":116},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage3.webp",[85,118,120],{"id":119},"设置git的用户与邮箱必须设置","设置git的用户与邮箱(必须设置！！！)",[26,122,124],{"className":28,"code":123,"language":30,"meta":31,"style":31},"git config --global user.name \"tungchiahui\"\ngit config --global user.email tungchiahui@gmail.com\n",[33,125,126,142],{"__ignoreMap":31},[36,127,128,130,133,136,139],{"class":38,"line":39},[36,129,69],{"class":42},[36,131,132],{"class":46}," config",[36,134,135],{"class":72}," --global",[36,137,138],{"class":46}," user.name",[36,140,141],{"class":46}," \"tungchiahui\"\n",[36,143,144,146,148,150,153],{"class":38,"line":53},[36,145,69],{"class":42},[36,147,132],{"class":46},[36,149,135],{"class":72},[36,151,152],{"class":46}," user.email",[36,154,155],{"class":46}," tungchiahui@gmail.com\n",[85,157,159],{"id":158},"git初始化使该文件夹被git控制","git初始化(使该文件夹被git控制)",[26,161,163],{"className":28,"code":162,"language":30,"meta":31,"style":31},"git init\n",[33,164,165],{"__ignoreMap":31},[36,166,167,169],{"class":38,"line":39},[36,168,69],{"class":42},[36,170,171],{"class":46}," init\n",[75,173,174],{},[78,175],{"alt":31,"src":176},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage4.webp",[85,178,180],{"id":179},"创建文件查看当前文件夹内的所有文件","创建文件&&查看当前文件夹内的所有文件",[26,182,184],{"className":28,"code":183,"language":30,"meta":31,"style":31},"touch test.md\nls\n",[33,185,186,194],{"__ignoreMap":31},[36,187,188,191],{"class":38,"line":39},[36,189,190],{"class":42},"touch",[36,192,193],{"class":46}," test.md\n",[36,195,196],{"class":38,"line":53},[36,197,198],{"class":42},"ls\n",[75,200,201],{},[78,202],{"alt":31,"src":203},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage5.webp",[85,205,206],{"id":206},"编辑文件文本内容",[26,208,210],{"className":28,"code":209,"language":30,"meta":31,"style":31},"sudo apt-get update\nsudo apt-get install vim\nvim .\u002Ftest.md\n",[33,211,212,220,231],{"__ignoreMap":31},[36,213,214,216,218],{"class":38,"line":39},[36,215,43],{"class":42},[36,217,47],{"class":46},[36,219,50],{"class":46},[36,221,222,224,226,228],{"class":38,"line":53},[36,223,43],{"class":42},[36,225,47],{"class":46},[36,227,60],{"class":46},[36,229,230],{"class":46}," vim\n",[36,232,233,236],{"class":38,"line":66},[36,234,235],{"class":42},"vim",[36,237,238],{"class":46}," .\u002Ftest.md\n",[75,240,241],{},[78,242],{"alt":31,"src":243},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage6.webp",[75,245,246],{},"接下来按键盘上的insert按键进入编辑模式&&并输入一段文本",[75,248,249],{},[78,250],{"alt":31,"src":251},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage7.webp",[75,253,254],{},"按ESC退出编辑模式",[75,256,257],{},[78,258],{"alt":31,"src":259},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage8.webp",[75,261,262],{},"按shift+冒号按键，并输入wq回车进行保存退出",[75,264,265],{},[78,266],{"alt":31,"src":267},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage9.webp",[85,269,270],{"id":270},"查询当前文件的状态",[26,272,274],{"className":28,"code":273,"language":30,"meta":31,"style":31},"git status\n",[33,275,276],{"__ignoreMap":31},[36,277,278,280],{"class":38,"line":39},[36,279,69],{"class":42},[36,281,282],{"class":46}," status\n",[75,284,285],{},[78,286],{"alt":31,"src":287},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage10.webp",[75,289,290],{},"On branch 分支名",[75,292,293],{},"Untracked是指文件在工作区",[85,295,296],{"id":296},"将文件提交到暂存区",[26,298,300],{"className":28,"code":299,"language":30,"meta":31,"style":31},"git add test.md\n",[33,301,302],{"__ignoreMap":31},[36,303,304,306,309],{"class":38,"line":39},[36,305,69],{"class":42},[36,307,308],{"class":46}," add",[36,310,193],{"class":46},[75,312,313],{},[78,314],{"alt":31,"src":315},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage11.webp",[85,317,318],{"id":318},"将文件提交至本地仓库",[26,320,322],{"className":28,"code":321,"language":30,"meta":31,"style":31},"git commit -m \"version1\"  \n#git commit -m \"提交的信息(可以理解为是注释)\"\n",[33,323,324,341],{"__ignoreMap":31},[36,325,326,328,331,334,337],{"class":38,"line":39},[36,327,69],{"class":42},[36,329,330],{"class":46}," commit",[36,332,333],{"class":72}," -m",[36,335,336],{"class":46}," \"version1\"",[36,338,340],{"class":339},"sVt8B","  \n",[36,342,343],{"class":38,"line":53},[36,344,346],{"class":345},"sJ8bj","#git commit -m \"提交的信息(可以理解为是注释)\"\n",[75,348,349],{},[78,350],{"alt":31,"src":351},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage12.webp",[85,353,354],{"id":354},"查看已经提交的项目版本",[26,356,358],{"className":28,"code":357,"language":30,"meta":31,"style":31},"git log\n",[33,359,360],{"__ignoreMap":31},[36,361,362,364],{"class":38,"line":39},[36,363,69],{"class":42},[36,365,366],{"class":46}," log\n",[75,368,369],{},[78,370],{"alt":31,"src":371},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage13.webp",[75,373,374,375,380],{},"这几行的意思是tungchiahui(邮箱为",[376,377,379],"a",{"href":378},"mailto:tungchiahui@gmail.com","tungchiahui@gmail.com",")用户于2023年12月30日周六00:42:47往master分支提交了注解为\"version1\"的项目版本",[85,382,384],{"id":383},"可以尝试对文件内容进行修改并再次进行提交","可以尝试对文件内容进行修改，并再次进行提交",[26,386,388],{"className":28,"code":387,"language":30,"meta":31,"style":31},"vim test.md\ngit add test.md\ngit commit -m \"version2\"\ngit log\n",[33,389,390,396,404,415],{"__ignoreMap":31},[36,391,392,394],{"class":38,"line":39},[36,393,235],{"class":42},[36,395,193],{"class":46},[36,397,398,400,402],{"class":38,"line":53},[36,399,69],{"class":42},[36,401,308],{"class":46},[36,403,193],{"class":46},[36,405,406,408,410,412],{"class":38,"line":66},[36,407,69],{"class":42},[36,409,330],{"class":46},[36,411,333],{"class":72},[36,413,414],{"class":46}," \"version2\"\n",[36,416,418,420],{"class":38,"line":417},4,[36,419,69],{"class":42},[36,421,366],{"class":46},[75,423,424],{},[78,425],{"alt":31,"src":426},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage14.webp",[75,428,429],{},[78,430],{"alt":31,"src":431},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage15.webp",[85,433,434],{"id":434},"如何忽略掉不想提交的文件",[16,436,437,440,443],{},[19,438,439],{},"首先创建一个文件.gitignore",[19,441,442],{},"再创建一个文件 绝密文件不想开源.py 并修改里面的内容",[19,444,445],{},"查看git状态",[26,447,449],{"className":28,"code":448,"language":30,"meta":31,"style":31},"touch .gitignore\ntouch vinci_secret.py\nvim vinci_secret.py\ngit status\n",[33,450,451,458,465,471],{"__ignoreMap":31},[36,452,453,455],{"class":38,"line":39},[36,454,190],{"class":42},[36,456,457],{"class":46}," .gitignore\n",[36,459,460,462],{"class":38,"line":53},[36,461,190],{"class":42},[36,463,464],{"class":46}," vinci_secret.py\n",[36,466,467,469],{"class":38,"line":66},[36,468,235],{"class":42},[36,470,464],{"class":46},[36,472,473,475],{"class":38,"line":417},[36,474,69],{"class":42},[36,476,282],{"class":46},[75,478,479],{},[78,480],{"alt":31,"src":481},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage16.webp",[75,483,484],{},[78,485],{"alt":31,"src":486},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage17.webp",[16,488,489],{"start":417},[19,490,491],{},"修改.gitignore的内容，将不想被提交的文件名写入该文件",[26,493,495],{"className":28,"code":494,"language":30,"meta":31,"style":31},"vim .gitignore\ngit status\n",[33,496,497,503],{"__ignoreMap":31},[36,498,499,501],{"class":38,"line":39},[36,500,235],{"class":42},[36,502,457],{"class":46},[36,504,505,507],{"class":38,"line":53},[36,506,69],{"class":42},[36,508,282],{"class":46},[75,510,511],{},[78,512],{"alt":31,"src":513},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage18.webp",[75,515,516],{},[78,517],{"alt":31,"src":518},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage19.webp",[85,520,521],{"id":521},"分支基本操作",[16,523,524,527],{},[19,525,526],{},"分支的作用:开辟项目的一个新仓库分支，与master等其他分支是独立的，可以进行独立的add、commit和diff、clone。",[19,528,529],{},"创建分支",[26,531,533],{"className":28,"code":532,"language":30,"meta":31,"style":31},"git branch route2\n#git branch 分支名\n",[33,534,535,545],{"__ignoreMap":31},[36,536,537,539,542],{"class":38,"line":39},[36,538,69],{"class":42},[36,540,541],{"class":46}," branch",[36,543,544],{"class":46}," route2\n",[36,546,547],{"class":38,"line":53},[36,548,549],{"class":345},"#git branch 分支名\n",[16,551,552],{"start":66},[19,553,554],{},"进入分支",[26,556,558],{"className":28,"code":557,"language":30,"meta":31,"style":31},"git checkout route2\n#git checkout 分支名\n",[33,559,560,569],{"__ignoreMap":31},[36,561,562,564,567],{"class":38,"line":39},[36,563,69],{"class":42},[36,565,566],{"class":46}," checkout",[36,568,544],{"class":46},[36,570,571],{"class":38,"line":53},[36,572,573],{"class":345},"#git checkout 分支名\n",[16,575,576],{"start":417},[19,577,578],{},"查询有多少分支，并查询目前为哪一个分支",[26,580,582],{"className":28,"code":581,"language":30,"meta":31,"style":31},"git branch\n",[33,583,584],{"__ignoreMap":31},[36,585,586,588],{"class":38,"line":39},[36,587,69],{"class":42},[36,589,590],{"class":46}," branch\n",[75,592,593],{},[78,594],{"alt":31,"src":595},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage20.webp",[75,597,598],{},"当前分支文件会完美继承master分支的文件",[16,600,602],{"start":601},5,[19,603,604],{},"删除掉该分支下的文件",[26,606,608],{"className":28,"code":607,"language":30,"meta":31,"style":31},"ls\nrm -rf test.md\nrm -rf vinci_secret.py\nls\n",[33,609,610,614,624,632],{"__ignoreMap":31},[36,611,612],{"class":38,"line":39},[36,613,198],{"class":42},[36,615,616,619,622],{"class":38,"line":53},[36,617,618],{"class":42},"rm",[36,620,621],{"class":72}," -rf",[36,623,193],{"class":46},[36,625,626,628,630],{"class":38,"line":66},[36,627,618],{"class":42},[36,629,621],{"class":72},[36,631,464],{"class":46},[36,633,634],{"class":38,"line":417},[36,635,198],{"class":42},[75,637,638],{},[78,639],{"alt":31,"src":640},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage21.webp",[16,642,644],{"start":643},6,[19,645,646],{},"将该分支往本地仓库进行提交",[26,648,650],{"className":28,"code":649,"language":30,"meta":31,"style":31},"git commit -a -m \"删库跑路\"\n#该指令是把git add和git commit指令一起写\n",[33,651,652,666],{"__ignoreMap":31},[36,653,654,656,658,661,663],{"class":38,"line":39},[36,655,69],{"class":42},[36,657,330],{"class":46},[36,659,660],{"class":72}," -a",[36,662,333],{"class":72},[36,664,665],{"class":46}," \"删库跑路\"\n",[36,667,668],{"class":38,"line":53},[36,669,670],{"class":345},"#该指令是把git add和git commit指令一起写\n",[75,672,673],{},[78,674],{"alt":31,"src":675},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage22.webp",[16,677,679],{"start":678},7,[19,680,681],{},"查看分支是否对其他分支有影响(切换到其他分支查看影响)",[26,683,685],{"className":28,"code":684,"language":30,"meta":31,"style":31},"git checkout master\nls\n",[33,686,687,696],{"__ignoreMap":31},[36,688,689,691,693],{"class":38,"line":39},[36,690,69],{"class":42},[36,692,566],{"class":46},[36,694,695],{"class":46}," master\n",[36,697,698],{"class":38,"line":53},[36,699,198],{"class":42},[75,701,702],{},[78,703],{"alt":31,"src":704},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage23.webp",[75,706,707],{},"可以发现，在route2分支中被删掉的test.md文件回来了，但是同样被删掉的vinci_sercet.py文件没回来，是因为该文件在提交时被.gitignore文件屏蔽了，不会被提交到本地仓库",[16,709,711],{"start":710},8,[19,712,713],{},"删除分支",[26,715,717],{"className":28,"code":716,"language":30,"meta":31,"style":31},"git branch -D route2\n#git branch -D 分支名\n",[33,718,719,730],{"__ignoreMap":31},[36,720,721,723,725,728],{"class":38,"line":39},[36,722,69],{"class":42},[36,724,541],{"class":46},[36,726,727],{"class":72}," -D",[36,729,544],{"class":46},[36,731,732],{"class":38,"line":53},[36,733,734],{"class":345},"#git branch -D 分支名\n",[75,736,737],{},[78,738],{"alt":31,"src":739},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage24.webp",[16,741,743],{"start":742},9,[19,744,745],{},"创建分支并立马切换到分支",[26,747,749],{"className":28,"code":748,"language":30,"meta":31,"style":31},"git checkout -b route3\n",[33,750,751],{"__ignoreMap":31},[36,752,753,755,757,760],{"class":38,"line":39},[36,754,69],{"class":42},[36,756,566],{"class":46},[36,758,759],{"class":72}," -b",[36,761,762],{"class":46}," route3\n",[75,764,765],{},[78,766],{"alt":31,"src":767},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage25.webp",[85,769,770],{"id":770},"分支的合并",[16,772,773],{},[19,774,775],{},"在route3分支中修改文件内容并提交",[26,777,779],{"className":28,"code":778,"language":30,"meta":31,"style":31},"vim test.md\ngit commit -am \"route3 version3\"\n#-a -m也可以被省略成-am\n",[33,780,781,787,799],{"__ignoreMap":31},[36,782,783,785],{"class":38,"line":39},[36,784,235],{"class":42},[36,786,193],{"class":46},[36,788,789,791,793,796],{"class":38,"line":53},[36,790,69],{"class":42},[36,792,330],{"class":46},[36,794,795],{"class":72}," -am",[36,797,798],{"class":46}," \"route3 version3\"\n",[36,800,801],{"class":38,"line":66},[36,802,803],{"class":345},"#-a -m也可以被省略成-am\n",[75,805,806],{},[78,807],{"alt":31,"src":808},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage26.webp",[75,810,811],{},[78,812],{"alt":31,"src":813},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage27.webp",[16,815,816],{"start":53},[19,817,818],{},"切换到master分支",[26,820,822],{"className":28,"code":821,"language":30,"meta":31,"style":31},"git checkout master\nvim test.md\n",[33,823,824,832],{"__ignoreMap":31},[36,825,826,828,830],{"class":38,"line":39},[36,827,69],{"class":42},[36,829,566],{"class":46},[36,831,695],{"class":46},[36,833,834,836],{"class":38,"line":53},[36,835,235],{"class":42},[36,837,193],{"class":46},[75,839,840],{},[78,841],{"alt":31,"src":842},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage28.webp",[16,844,845],{"start":66},[19,846,847],{},"将route3分支合并到当前分支上",[26,849,851],{"className":28,"code":850,"language":30,"meta":31,"style":31},"git merge route3\n#git merge 被合并的分支名\nvim test.md\n",[33,852,853,862,867],{"__ignoreMap":31},[36,854,855,857,860],{"class":38,"line":39},[36,856,69],{"class":42},[36,858,859],{"class":46}," merge",[36,861,762],{"class":46},[36,863,864],{"class":38,"line":53},[36,865,866],{"class":345},"#git merge 被合并的分支名\n",[36,868,869,871],{"class":38,"line":66},[36,870,235],{"class":42},[36,872,193],{"class":46},[75,874,875],{},[78,876],{"alt":31,"src":877},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage29.webp",[75,879,880],{},[78,881],{"alt":31,"src":882},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage30.webp",[85,884,885],{"id":885},"分支合并的冲突",[16,887,888],{},[19,889,890],{},"为master添加一行内容，并提交",[26,892,894],{"className":28,"code":893,"language":30,"meta":31,"style":31},"vim test.md\ngit commit -am \"master version4\"\n",[33,895,896,902],{"__ignoreMap":31},[36,897,898,900],{"class":38,"line":39},[36,899,235],{"class":42},[36,901,193],{"class":46},[36,903,904,906,908,910],{"class":38,"line":53},[36,905,69],{"class":42},[36,907,330],{"class":46},[36,909,795],{"class":72},[36,911,912],{"class":46}," \"master version4\"\n",[75,914,915],{},[78,916],{"alt":31,"src":917},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage31.webp",[75,919,920],{},[78,921],{"alt":31,"src":922},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage32.webp",[16,924,925],{"start":53},[19,926,927],{},"切换到route3分支，并添加内容并提交",[26,929,931],{"className":28,"code":930,"language":30,"meta":31,"style":31},"git checkout route3\nvim test.md\ngit commit -am \"route3 version4\"\n",[33,932,933,941,947],{"__ignoreMap":31},[36,934,935,937,939],{"class":38,"line":39},[36,936,69],{"class":42},[36,938,566],{"class":46},[36,940,762],{"class":46},[36,942,943,945],{"class":38,"line":53},[36,944,235],{"class":42},[36,946,193],{"class":46},[36,948,949,951,953,955],{"class":38,"line":66},[36,950,69],{"class":42},[36,952,330],{"class":46},[36,954,795],{"class":72},[36,956,957],{"class":46}," \"route3 version4\"\n",[75,959,960],{},[78,961],{"alt":31,"src":962},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage33.webp",[75,964,965],{},[78,966],{"alt":31,"src":967},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage34.webp",[16,969,970],{"start":66},[19,971,972],{},"合并分支",[26,974,976],{"className":28,"code":975,"language":30,"meta":31,"style":31},"git merge master\n",[33,977,978],{"__ignoreMap":31},[36,979,980,982,984],{"class":38,"line":39},[36,981,69],{"class":42},[36,983,859],{"class":46},[36,985,695],{"class":46},[75,987,988],{},[78,989],{"alt":31,"src":990},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage35.webp",[75,992,993],{},"发生了内容冲突，需要手动修改文本冲突才可以！或者其他办法也可以解决，可以查询百度。",[85,995,997],{"id":996},"远程仓库github","远程仓库Github",[16,999,1000,1009],{},[19,1001,1002,1003],{},"打开github官网：",[376,1004,1008],{"href":1005,"rel":1006},"https:\u002F\u002Fgithub.com(%E5%A6%82%E6%9E%9C%E4%BD%A0%E6%89%93%E4%B8%8D%E5%BC%80%EF%BC%8C%E8%AF%B7%E8%87%AA%E5%B7%B1%E6%89%BE%E5%8A%9E%E6%B3%95%E6%89%93%E5%BC%80)",[1007],"nofollow","https:\u002F\u002Fgithub.com(如果你打不开，请自己找办法打开)",[19,1010,1011],{},"注册并登录账号",[75,1013,1014],{},[78,1015],{"alt":31,"src":1016},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage36.webp",[16,1018,1019],{"start":66},[19,1020,1021],{},"新建远程仓库",[75,1023,1024],{},[78,1025],{"alt":31,"src":1026},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage37.webp",[75,1028,1029],{},[78,1030],{"alt":31,"src":1031},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage38.webp",[75,1033,1034],{},"这个界面建议详细设置一下，但这里是演示，所以只设置了仓库名称，其他选项为默认操作。",[75,1036,1037],{},[78,1038],{"alt":31,"src":1039},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage39.webp",[75,1041,1042],{},"如果上图出现，则说明已经创建成功了",[16,1044,1045],{"start":417},[19,1046,1047],{},"进行创建文件并提交",[75,1049,1050],{},[78,1051],{"alt":31,"src":1052},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage40.webp",[75,1054,1055],{},[78,1056],{"alt":31,"src":1057},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage41.webp",[75,1059,1060],{},"填写好文件名，文件内容，就可以点绿色按钮进行提交了。然后也可以填写提交的注释信息。",[75,1062,1063],{},[78,1064],{"alt":31,"src":1065},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage42.webp",[75,1067,1068],{},[78,1069],{"alt":31,"src":1070},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage43.webp",[16,1072,1073],{"start":601},[19,1074,1075],{},"克隆远程仓库到本地",[75,1077,1078],{},[78,1079],{"alt":31,"src":1080},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage44.webp",[26,1082,1084],{"className":28,"code":1083,"language":30,"meta":31,"style":31},"cd\nmkdir repo_floder\ncd repo_floder\ngit clone https:\u002F\u002Fgithub.com\u002Ftungchiahui\u002Ftest_repo.git\n",[33,1085,1086,1091,1098,1104],{"__ignoreMap":31},[36,1087,1088],{"class":38,"line":39},[36,1089,1090],{"class":72},"cd\n",[36,1092,1093,1095],{"class":38,"line":53},[36,1094,98],{"class":42},[36,1096,1097],{"class":46}," repo_floder\n",[36,1099,1100,1102],{"class":38,"line":66},[36,1101,109],{"class":72},[36,1103,1097],{"class":46},[36,1105,1106,1108,1111],{"class":38,"line":417},[36,1107,69],{"class":42},[36,1109,1110],{"class":46}," clone",[36,1112,1113],{"class":46}," https:\u002F\u002Fgithub.com\u002Ftungchiahui\u002Ftest_repo.git\n",[75,1115,1116],{},[78,1117],{"alt":31,"src":1118},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage45.webp",[75,1120,1121],{},"如果出错，请检查是否能正常访问github！",[75,1123,1124,1127],{},[78,1125],{"alt":31,"src":1126},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage46.webp",[78,1128],{"alt":31,"src":1129},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage47.webp",[16,1131,1132],{"start":643},[19,1133,1134],{},"对文件内容进行修改",[26,1136,1138],{"className":28,"code":1137,"language":30,"meta":31,"style":31},"cd test_repo\nvim test1.md\n",[33,1139,1140,1147],{"__ignoreMap":31},[36,1141,1142,1144],{"class":38,"line":39},[36,1143,109],{"class":72},[36,1145,1146],{"class":46}," test_repo\n",[36,1148,1149,1151],{"class":38,"line":53},[36,1150,235],{"class":42},[36,1152,1153],{"class":46}," test1.md\n",[75,1155,1156],{},[78,1157],{"alt":31,"src":1158},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage48.webp",[75,1160,1161],{},[78,1162],{"alt":31,"src":1163},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage49.webp",[75,1165,1166],{},[78,1167],{"alt":31,"src":1168},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage50.webp",[16,1170,1171],{"start":678},[19,1172,1173],{},"查看该本地仓库与哪些远程仓库有联系",[26,1175,1177],{"className":28,"code":1176,"language":30,"meta":31,"style":31},"git remote -v\n",[33,1178,1179],{"__ignoreMap":31},[36,1180,1181,1183,1186],{"class":38,"line":39},[36,1182,69],{"class":42},[36,1184,1185],{"class":46}," remote",[36,1187,1188],{"class":72}," -v\n",[75,1190,1191],{},[78,1192],{"alt":31,"src":1193},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage51.webp",[16,1195,1196],{"start":710},[19,1197,1198],{},"将本地仓库push到远程仓库",[26,1200,1202],{"className":28,"code":1201,"language":30,"meta":31,"style":31},"git push\n",[33,1203,1204],{"__ignoreMap":31},[36,1205,1206,1208],{"class":38,"line":39},[36,1207,69],{"class":42},[36,1209,1210],{"class":46}," push\n",[75,1212,1213],{},[78,1214],{"alt":31,"src":1215},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage52.webp",[75,1217,1218],{},"这里需要你输入github的用户名与密码，用户名则为github用户名，但是密码则为github用户token，生成token的步骤如下：",[75,1220,1221,1224],{},[78,1222],{"alt":31,"src":1223},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage53.webp",[78,1225],{"alt":31,"src":1226},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage54.webp",[75,1228,1229],{},[78,1230],{"alt":31,"src":1231},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage55.webp",[75,1233,1234],{},[78,1235],{"alt":31,"src":1236},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage56.webp",[75,1238,1239],{},"Note随便填，有效日期选择没有截止时间。",[75,1241,1242],{},"下面能勾的勾全勾上，这是权限。",[75,1244,1245],{},[78,1246],{"alt":31,"src":1247},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage57.webp",[75,1249,1250],{},"复制token并填入password中(token在终端中输入会被隐藏，输完直接回车即可)",[75,1252,1253],{},[78,1254],{"alt":31,"src":1255},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage58.webp",[16,1257,1258],{"start":742},[19,1259,1260],{},"查看远程仓库",[75,1262,1263],{},[78,1264],{"alt":31,"src":1265},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage59.webp",[75,1267,1268],{},"发现文件已经被修改了！",[16,1270,1272],{"start":1271},10,[19,1273,1274],{},"对远程仓库内容进行修改",[75,1276,1277],{},[78,1278],{"alt":31,"src":1279},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage60.webp",[16,1281,1283],{"start":1282},11,[19,1284,1285],{},"将远程仓库内容拉到本地仓库",[26,1287,1289],{"className":28,"code":1288,"language":30,"meta":31,"style":31},"git fetch\n",[33,1290,1291],{"__ignoreMap":31},[36,1292,1293,1295],{"class":38,"line":39},[36,1294,69],{"class":42},[36,1296,1297],{"class":46}," fetch\n",[75,1299,1300],{},[78,1301],{"alt":31,"src":1302},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage61.webp",[16,1304,1306],{"start":1305},12,[19,1307,1308],{},"查看本地与远程仓库区别",[26,1310,1312],{"className":28,"code":1311,"language":30,"meta":31,"style":31},"git diff origin\u002Fmain\n#git diff 远程仓库名\u002F分支名\n",[33,1313,1314,1324],{"__ignoreMap":31},[36,1315,1316,1318,1321],{"class":38,"line":39},[36,1317,69],{"class":42},[36,1319,1320],{"class":46}," diff",[36,1322,1323],{"class":46}," origin\u002Fmain\n",[36,1325,1326],{"class":38,"line":53},[36,1327,1328],{"class":345},"#git diff 远程仓库名\u002F分支名\n",[75,1330,1331],{},[78,1332],{"alt":31,"src":1333},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage62.webp",[16,1335,1337],{"start":1336},13,[19,1338,1339],{},"如果发现内容没问题，就可以将远程仓库内容同步到工作区",[26,1341,1343],{"className":28,"code":1342,"language":30,"meta":31,"style":31},"git pull\n",[33,1344,1345],{"__ignoreMap":31},[36,1346,1347,1349],{"class":38,"line":39},[36,1348,69],{"class":42},[36,1350,1351],{"class":46}," pull\n",[75,1353,1354],{},[78,1355],{"alt":31,"src":1356},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage63.webp",[16,1358,1360],{"start":1359},14,[19,1361,1362],{},"查看项目修改历史",[26,1364,1365],{"className":28,"code":357,"language":30,"meta":31,"style":31},[33,1366,1367],{"__ignoreMap":31},[36,1368,1369,1371],{"class":38,"line":39},[36,1370,69],{"class":42},[36,1372,366],{"class":46},[75,1374,1375],{},[78,1376],{"alt":31,"src":1377},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage64.webp",[85,1379,1381],{"id":1380},"使用pull-request合并代码","使用Pull Request合并代码",[75,1383,1384],{},"Pull Request简称PR，用于请求将一个分支中的修改合并到另一个分支。PR可以让项目成员在合并前查看代码变化、留言讨论和进行审查，因此团队协作时通常不会直接将未审查的代码push到main分支。",[16,1386,1387],{},[19,1388,1389],{},"从main分支创建并进入一个功能分支",[26,1391,1393],{"className":28,"code":1392,"language":30,"meta":31,"style":31},"git checkout main\ngit pull origin main\ngit checkout -b feature\u002Fpr-demo\n",[33,1394,1395,1404,1416],{"__ignoreMap":31},[36,1396,1397,1399,1401],{"class":38,"line":39},[36,1398,69],{"class":42},[36,1400,566],{"class":46},[36,1402,1403],{"class":46}," main\n",[36,1405,1406,1408,1411,1414],{"class":38,"line":53},[36,1407,69],{"class":42},[36,1409,1410],{"class":46}," pull",[36,1412,1413],{"class":46}," origin",[36,1415,1403],{"class":46},[36,1417,1418,1420,1422,1424],{"class":38,"line":66},[36,1419,69],{"class":42},[36,1421,566],{"class":46},[36,1423,759],{"class":72},[36,1425,1426],{"class":46}," feature\u002Fpr-demo\n",[75,1428,1429,1432],{},[33,1430,1431],{},"feature\u002Fpr-demo","是本次示例的分支名，实际开发时应使用能表达修改内容的名称。",[16,1434,1435],{"start":53},[19,1436,1437],{},"修改文件并提交到本地仓库",[26,1439,1441],{"className":28,"code":1440,"language":30,"meta":31,"style":31},"vim test1.md\n",[33,1442,1443],{"__ignoreMap":31},[36,1444,1445,1447],{"class":38,"line":39},[36,1446,235],{"class":42},[36,1448,1153],{"class":46},[75,1450,1451,1452,1455],{},"按下",[33,1453,1454],{},"insert","按键,然后随便输入点正文.",[75,1457,1458],{},"例如",[26,1460,1465],{"className":1461,"code":1463,"language":1464,"meta":31},[1462],"language-text","TEST11111\n","text",[33,1466,1463],{"__ignoreMap":31},[75,1468,1469],{},[78,1470],{"alt":31,"src":1471},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787064333936-11c1cbc1.webp",[75,1473,1474,1475,1478,1479,1482],{},"然后按下",[33,1476,1477],{},"ESC",",再输入",[33,1480,1481],{},":wq","进行保存.",[26,1484,1486],{"className":28,"code":1485,"language":30,"meta":31,"style":31},"git add test1.md\ngit commit -m \"修改test1文件\"\n",[33,1487,1488,1496],{"__ignoreMap":31},[36,1489,1490,1492,1494],{"class":38,"line":39},[36,1491,69],{"class":42},[36,1493,308],{"class":46},[36,1495,1153],{"class":46},[36,1497,1498,1500,1502,1504],{"class":38,"line":53},[36,1499,69],{"class":42},[36,1501,330],{"class":46},[36,1503,333],{"class":72},[36,1505,1506],{"class":46}," \"修改test1文件\"\n",[16,1508,1509],{"start":66},[19,1510,1511],{},"将功能分支推送到Github",[26,1513,1515],{"className":28,"code":1514,"language":30,"meta":31,"style":31},"git push -u origin feature\u002Fpr-demo\n",[33,1516,1517],{"__ignoreMap":31},[36,1518,1519,1521,1524,1527,1529],{"class":38,"line":39},[36,1520,69],{"class":42},[36,1522,1523],{"class":46}," push",[36,1525,1526],{"class":72}," -u",[36,1528,1413],{"class":46},[36,1530,1426],{"class":46},[75,1532,1533,1536,1537,1540],{},[33,1534,1535],{},"-u","会建立本地分支与远程分支的跟踪关系，之后在该分支上可以直接使用",[33,1538,1539],{},"git push","。",[75,1542,1543],{},[78,1544],{"alt":31,"src":1545},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787064461783-99e8dd17.webp",[16,1547,1548],{"start":417},[19,1549,1550],{},"在Github仓库页面创建PR",[75,1552,1553,1554,1557,1558,1561,1562,1540],{},"推送新分支后，Github仓库页面通常会显示",[33,1555,1556],{},"Compare & pull request","按钮，点击该按钮。如果没有显示，也可以进入仓库的",[33,1559,1560],{},"Pull requests","页面，点击",[33,1563,1564],{},"New pull request",[75,1566,1567],{},[78,1568],{"alt":31,"src":1569},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787064906162-71445eaa.webp",[75,1571,1572],{},"确认两个分支选择正确：",[1574,1575,1576,1582],"ul",{},[19,1577,1578,1581],{},[33,1579,1580],{},"base: main","：修改最终要合并到的目标分支。",[19,1583,1584,1587],{},[33,1585,1586],{},"compare: feature\u002Fpr-demo","：包含本次修改的来源分支。",[75,1589,1590,1591,1540],{},"PR只能在两个不同的分支之间创建。确认下方显示的提交和文件变化没有问题后，填写PR标题和说明，再点击",[33,1592,1593],{},"Create pull request",[75,1595,1596],{},[78,1597],{"alt":31,"src":1598},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787064943146-74bb95c8.webp",[16,1600,1601],{"start":601},[19,1602,1603],{},"审查并继续修改PR",[75,1605,1606,1607,1610],{},"创建PR后，可以在",[33,1608,1609],{},"Files changed","页面查看本次修改，也可以邀请其他项目成员进行Review。",[75,1612,1613],{},[78,1614],{"alt":31,"src":1615},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787064981492-31b0d73a.webp",[75,1617,1618],{},[78,1619],{"alt":31,"src":1620},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065005428-a0e83f50.webp",[75,1622,1623],{},"如果审查后需要继续修改，不需要重新创建PR。只需在同一个功能分支上继续提交并push，新的提交会自动加入当前PR。",[26,1625,1626],{"className":28,"code":1440,"language":30,"meta":31,"style":31},[33,1627,1628],{"__ignoreMap":31},[36,1629,1630,1632],{"class":38,"line":39},[36,1631,235],{"class":42},[36,1633,1153],{"class":46},[75,1635,1451,1636,1638],{},[33,1637,1454],{},"按键,然后修改下正文.",[75,1640,1458],{},[26,1642,1645],{"className":1643,"code":1644,"language":1464,"meta":31},[1462],"TEST222\n",[33,1646,1644],{"__ignoreMap":31},[75,1648,1649],{},[78,1650],{"alt":31,"src":1651},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065067042-e6c639e5.webp",[75,1653,1474,1654,1478,1656,1482],{},[33,1655,1477],{},[33,1657,1481],{},[26,1659,1661],{"className":28,"code":1660,"language":30,"meta":31,"style":31},"git add test1.md\ngit commit -m \"根据Review意见修改\"\ngit push\n",[33,1662,1663,1671,1682],{"__ignoreMap":31},[36,1664,1665,1667,1669],{"class":38,"line":39},[36,1666,69],{"class":42},[36,1668,308],{"class":46},[36,1670,1153],{"class":46},[36,1672,1673,1675,1677,1679],{"class":38,"line":53},[36,1674,69],{"class":42},[36,1676,330],{"class":46},[36,1678,333],{"class":72},[36,1680,1681],{"class":46}," \"根据Review意见修改\"\n",[36,1683,1684,1686],{"class":38,"line":66},[36,1685,69],{"class":42},[36,1687,1210],{"class":46},[75,1689,1690],{},"你会发现又多了一个commit如下图.",[75,1692,1693],{},[78,1694],{"alt":31,"src":1695},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065285593-fd34b4ab.webp",[75,1697,1698,1699,1701],{},"点击",[33,1700,1609],{},"页面查看本次修改:",[75,1703,1704],{},[78,1705],{"alt":31,"src":1706},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065330682-5a3c24b2.webp",[16,1708,1709],{},[19,1710,1711],{},"合并PR",[75,1713,1714,1715,1718,1719,1722],{},"审查通过且代码没有冲突时，拥有仓库写入权限的成员可以点击",[33,1716,1717],{},"Merge pull request","，再点击",[33,1720,1721],{},"Confirm merge","完成合并。仓库如果设置了审查或自动测试规则，需要先满足这些条件才能合并。",[75,1724,1725],{},[78,1726],{"alt":31,"src":1727},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065354582-4983dc9a.webp",[75,1729,1730],{},[78,1731],{"alt":31,"src":1732},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065535509-f5281ba6.webp",[16,1734,1735],{"start":53},[19,1736,1737],{},"同步main分支并删除已合并的分支",[75,1739,1740,1741,1744],{},"合并成功后，可以在PR页面点击",[33,1742,1743],{},"Delete branch","删除Github上的功能分支。然后返回终端，更新本地main分支并删除本地功能分支。",[75,1746,1747],{},[78,1748],{"alt":31,"src":1749},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065902706-8963e001.webp",[75,1751,1752],{},[78,1753],{"alt":31,"src":1754},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065920575-e0e74498.webp",[26,1756,1758],{"className":28,"code":1757,"language":30,"meta":31,"style":31},"git checkout main\ngit pull origin main\ngit branch -d feature\u002Fpr-demo\n",[33,1759,1760,1768,1778],{"__ignoreMap":31},[36,1761,1762,1764,1766],{"class":38,"line":39},[36,1763,69],{"class":42},[36,1765,566],{"class":46},[36,1767,1403],{"class":46},[36,1769,1770,1772,1774,1776],{"class":38,"line":53},[36,1771,69],{"class":42},[36,1773,1410],{"class":46},[36,1775,1413],{"class":46},[36,1777,1403],{"class":46},[36,1779,1780,1782,1784,1787],{"class":38,"line":66},[36,1781,69],{"class":42},[36,1783,541],{"class":46},[36,1785,1786],{"class":72}," -d",[36,1788,1426],{"class":46},[75,1790,1791],{},[78,1792],{"alt":31,"src":1793},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787065949628-3cbeb701.webp",[85,1795,1797],{"id":1796},"向没有写入权限的仓库提交pr","向没有写入权限的仓库提交PR",[75,1799,1800,1801,1804],{},"如果想向其他人的开源项目贡献代码，通常没有权限直接将分支push到对方的仓库。此时需要先在Github上点击",[33,1802,1803],{},"Fork","，将该仓库复制到自己的账号下。",[75,1806,1807],{},"Fork完成后，克隆自己的仓库并记录原仓库地址：",[26,1809,1811],{"className":28,"code":1810,"language":30,"meta":31,"style":31},"git clone https:\u002F\u002Fgithub.com\u002F你的Github用户名\u002F仓库名.git\ncd 仓库名\ngit remote add upstream https:\u002F\u002Fgithub.com\u002F原仓库用户名\u002F仓库名.git\ngit remote -v\n",[33,1812,1813,1822,1829,1843],{"__ignoreMap":31},[36,1814,1815,1817,1819],{"class":38,"line":39},[36,1816,69],{"class":42},[36,1818,1110],{"class":46},[36,1820,1821],{"class":46}," https:\u002F\u002Fgithub.com\u002F你的Github用户名\u002F仓库名.git\n",[36,1823,1824,1826],{"class":38,"line":53},[36,1825,109],{"class":72},[36,1827,1828],{"class":46}," 仓库名\n",[36,1830,1831,1833,1835,1837,1840],{"class":38,"line":66},[36,1832,69],{"class":42},[36,1834,1185],{"class":46},[36,1836,308],{"class":46},[36,1838,1839],{"class":46}," upstream",[36,1841,1842],{"class":46}," https:\u002F\u002Fgithub.com\u002F原仓库用户名\u002F仓库名.git\n",[36,1844,1845,1847,1849],{"class":38,"line":417},[36,1846,69],{"class":42},[36,1848,1185],{"class":46},[36,1850,1188],{"class":72},[75,1852,1853,1854,1857,1858,1861],{},"其中",[33,1855,1856],{},"origin","指向自己Fork出来的仓库，",[33,1859,1860],{},"upstream","指向原仓库。接下来仍然需要创建功能分支，不要直接在main分支上修改。",[26,1863,1865],{"className":28,"code":1864,"language":30,"meta":31,"style":31},"git checkout -b feature\u002Fpr-demo\n# 修改文件后提交\ngit add .\ngit commit -m \"添加示例功能\"\ngit push -u origin feature\u002Fpr-demo\n",[33,1866,1867,1877,1882,1891,1902],{"__ignoreMap":31},[36,1868,1869,1871,1873,1875],{"class":38,"line":39},[36,1870,69],{"class":42},[36,1872,566],{"class":46},[36,1874,759],{"class":72},[36,1876,1426],{"class":46},[36,1878,1879],{"class":38,"line":53},[36,1880,1881],{"class":345},"# 修改文件后提交\n",[36,1883,1884,1886,1888],{"class":38,"line":66},[36,1885,69],{"class":42},[36,1887,308],{"class":46},[36,1889,1890],{"class":46}," .\n",[36,1892,1893,1895,1897,1899],{"class":38,"line":417},[36,1894,69],{"class":42},[36,1896,330],{"class":46},[36,1898,333],{"class":72},[36,1900,1901],{"class":46}," \"添加示例功能\"\n",[36,1903,1904,1906,1908,1910,1912],{"class":38,"line":601},[36,1905,69],{"class":42},[36,1907,1523],{"class":46},[36,1909,1526],{"class":72},[36,1911,1413],{"class":46},[36,1913,1426],{"class":46},[75,1915,1916],{},"推送后在Github上创建PR，并特别确认：",[1574,1918,1919,1929],{},[19,1920,1921,1924,1925,1928],{},[33,1922,1923],{},"base repository","是对方的原仓库，",[33,1926,1927],{},"base","是对方要接收修改的分支。",[19,1930,1931,1934,1935,1938],{},[33,1932,1933],{},"head repository","是自己Fork的仓库，",[33,1936,1937],{},"compare","是自己刚刚推送的功能分支。",[75,1940,1941,1942,1944],{},"之后填写标题和修改说明，点击",[33,1943,1593],{},"即可向原项目提交PR。",[12,1946,1948],{"id":1947},"vscode-git","VScode + Git",[85,1950,1952],{"id":1951},"vscode是什么","VScode是什么？",[75,1954,1955],{},"VScode是一个文本编辑器，类似于Vim等编辑器，但是他有图形界面，有非常多的好用的插件，而且可以集成编译器环境，最终也可以被用户自定义配置成Visual Studio那样的IDE。",[85,1957,1959],{"id":1958},"vscode官网","VScode官网:",[75,1961,1962],{},[376,1963,1964],{"href":1964,"rel":1965},"https:\u002F\u002Fcode.visualstudio.com\u002F",[1007],[85,1967,1969],{"id":1968},"创建文件夹并在该文件夹下打开vscode","创建文件夹并在该文件夹下打开VScode",[75,1971,1972],{},[78,1973],{"alt":31,"src":1974},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage65.webp",[85,1976,1977],{"id":1977},"新建文件",[75,1979,1980],{},[78,1981],{"alt":31,"src":1982},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage66.webp",[75,1984,1985],{},[78,1986],{"alt":31,"src":1987},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage67.webp",[85,1989,1991],{"id":1990},"初始化git类似于git-init命令","初始化Git(类似于git init命令)",[75,1993,1994],{},[78,1995],{"alt":31,"src":1996},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage68.webp",[75,1998,1999],{},[78,2000],{"alt":31,"src":2001},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage69.webp",[75,2003,2004],{},"U是指未追踪状态，也就是文件还在工作区",[85,2006,2008],{"id":2007},"将文件提交到暂存区类似git-add","将文件提交到暂存区(类似git add)",[75,2010,2011],{},[78,2012],{"alt":31,"src":2013},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage70.webp",[85,2015,2017],{"id":2016},"取消提交到暂存区点减号这里不取消","取消提交到暂存区点减号(这里不取消)",[75,2019,2020],{},[78,2021],{"alt":31,"src":2022},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage71.webp",[75,2024,2025],{},"A是added表示在暂存区",[85,2027,2029],{"id":2028},"进行提交类似于commit","进行提交(类似于commit)",[75,2031,2032],{},[78,2033],{"alt":31,"src":2034},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage72.webp",[75,2036,2037],{},"输入提交信息，并点对号进行commit",[85,2039,2041],{"id":2040},"创建新分支并进入新分支","创建新分支，并进入新分支",[75,2043,2044],{},[78,2045],{"alt":31,"src":2046},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage73.webp",[75,2048,2049],{},[78,2050],{"alt":31,"src":2051},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage74.webp",[85,2053,2054],{"id":2054},"修改内容",[75,2056,2057],{},[78,2058],{"alt":31,"src":2059},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage75.webp",[75,2061,2062],{},"显示M为修改状态",[85,2064,2066],{"id":2065},"查看历史版本对比点击文件","查看历史版本对比(点击文件)",[75,2068,2069],{},[78,2070],{"alt":31,"src":2071},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage76.webp",[85,2073,2074],{"id":2074},"提交",[75,2076,2077],{},[78,2078],{"alt":31,"src":2079},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage77.webp",[85,2081,2082],{"id":2082},"切换回main分支",[75,2084,2085],{},[78,2086],{"alt":31,"src":2087},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage78.webp",[75,2089,2090],{},[78,2091],{"alt":31,"src":2092},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage79.webp",[85,2094,972],{"id":972},[75,2096,2097],{},[78,2098],{"alt":31,"src":2099},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage80.webp",[75,2101,2102],{},[78,2103],{"alt":31,"src":2104},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage81.webp",[75,2106,2107],{},[78,2108],{"alt":31,"src":2109},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage82.webp",[85,2111,2113],{"id":2112},"push到github远程仓库","Push到Github远程仓库",[16,2115,2116],{},[19,2117,2118,2119,2122,2123,2126],{},"在下面这个界面找到 ",[33,2120,2121],{},"Publish to Github",",可能会弹出来点击",[33,2124,2125],{},"Sign In","，然后按提示在浏览器中完成Github授权。",[75,2128,2129],{},[78,2130],{"alt":31,"src":2131},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067081290-b1e5b2ef.webp",[16,2133,2134],{"start":53},[19,2135,2136],{},"输入仓库名",[75,2138,2139],{},[78,2140],{"alt":31,"src":2141},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage83.webp",[75,2143,2144],{},[78,2145],{"alt":31,"src":2146},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage84.webp",[16,2148,2149],{"start":66},[19,2150,2151],{},"打开github仓库查看",[75,2153,2154],{},[78,2155],{"alt":31,"src":2156},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage85.webp",[75,2158,2159],{},[78,2160],{"alt":31,"src":2161},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002Fimage86.webp",[85,2163,2165],{"id":2164},"使用vscode图形化提交pull-request","使用VScode图形化提交Pull Request",[75,2167,2168],{},"本节演示如何使用VScode创建、审查和合并Pull Request，整个过程不需要在终端输入Git指令。",[2170,2171,2172],"blockquote",{},[75,2173,2174],{},"注意：如果要使用Pull Request，功能分支提交完成后不要执行上文的“切换回main分支”和“合并分支”操作。应当将功能分支保持独立，通过PR审查后再合并到main分支。",[16,2176,2177],{},[19,2178,2179],{},"安装Github Pull Requests扩展",[75,2181,2182,2183,2186,2187,2189],{},"打开VScode左侧的扩展页面，搜索",[33,2184,2185],{},"GitHub Pull Requests","，安装由Github发布的",[33,2188,2185],{},"扩展。",[75,2191,2192],{},[78,2193],{"alt":31,"src":2194},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787066639021-9a02afab.webp",[16,2196,2197],{"start":53},[19,2198,2199],{},"从main创建功能分支",[75,2201,2202,2203,2206],{},"先点击VScode左下角的当前分支名，切换到main分支。在源代码管理页面点击选择",[33,2204,2205],{},"Pull","，保证本地main分支与Github上的内容一致。",[75,2208,2209],{},[78,2210],{"alt":31,"src":2211},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067349047-4d94b8b8.webp",[75,2213,2214],{},[78,2215],{"alt":31,"src":2216},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067390159-f719aeea.webp",[75,2218,2219,2220,2223,2224,2226],{},"再次点击左下角的分支名，选择",[33,2221,2222],{},"Create new branch from...","，选择main作为起点，然后输入一个能表达修改内容的分支名，例如",[33,2225,1431],{},"。创建后VScode会自动切换到该分支。",[75,2228,2229],{},[78,2230],{"alt":31,"src":2211},[75,2232,2233],{},[78,2234],{"alt":31,"src":2235},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067431992-eade67a5.webp",[75,2237,2238],{},[78,2239],{"alt":31,"src":2240},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067511583-3a757fd7.webp",[75,2242,2243],{},[78,2244],{"alt":31,"src":2245},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067526052-f9bbf20b.webp",[75,2247,2248],{},[78,2249],{"alt":31,"src":2250},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067546196-fb5d9180.webp",[16,2252,2253],{},[19,2254,2255],{},"修改文件并提交",[75,2257,2258],{},"在功能分支中修改文件并保存，然后打开源代码管理页面：",[75,2260,2261],{},[78,2262],{"alt":31,"src":2263},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067588271-e1b9561b.webp",[1574,2265,2266,2273,2279],{},[19,2267,2268,2269,2272],{},"点击文件右侧的",[33,2270,2271],{},"+","，将修改加入暂存区。",[19,2274,2275,2276,1540],{},"在上方输入提交信息，例如",[33,2277,2278],{},"Add PR demo",[19,2280,1698,2281,2284],{},[33,2282,2283],{},"Commit","完成本地提交。",[75,2286,2287],{},[78,2288],{"alt":31,"src":2289},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067621148-3174d0c2.webp",[75,2291,2292],{},[78,2293],{"alt":31,"src":2294},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067634417-f8d1f64e.webp",[75,2296,2297],{},"commit后变为",[75,2299,2300],{},[78,2301],{"alt":31,"src":2302},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067649357-58274e7e.webp",[16,2304,2305],{},[19,2306,2307],{},"在VScode中创建PR",[75,2309,2310,2311,2314,2315,2318,2319,1540],{},"打开左侧的Github Pull Requests页面，点击",[33,2312,2313],{},"Create Pull Request","。也可以按",[33,2316,2317],{},"Ctrl+Shift+P","打开命令面板，执行",[33,2320,2321],{},"GitHub Pull Requests: Create Pull Request",[75,2323,2324],{},[78,2325],{"alt":31,"src":2326},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067711915-86c8f341.webp",[16,2328,2329],{"start":53},[19,2330,2331],{},"填写PR信息",[75,2333,2334],{},"在Create Pull Request页面中检查以下内容：",[1574,2336,2337,2343,2349,2354,2360],{},[19,2338,2339,2342],{},[33,2340,2341],{},"Base Repository","：接收修改的Github仓库。",[19,2344,2345,2348],{},[33,2346,2347],{},"Base Branch","：要合并进入的目标分支，通常为main。",[19,2350,2351,2352,1540],{},"来源分支：当前的功能分支，例如",[33,2353,1431],{},[19,2355,2356,2359],{},[33,2357,2358],{},"Title","：简洁描述本次修改。",[19,2361,2362,2365],{},[33,2363,2364],{},"Description","：说明修改原因、主要内容和验证方法。",[75,2367,2368,2369,2372,2373,2376],{},"也可以根据需要添加Reviewers、Assignees和Labels。检查无误后点击",[33,2370,2371],{},"Create","提交PR；如果修改还没有完成，可以选择",[33,2374,2375],{},"Create Draft","创建草稿PR。",[75,2378,2379],{},[78,2380],{"alt":31,"src":2381},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067744001-1402f27c.webp",[75,2383,2384,2385,2388],{},"如果当前分支还没有推送到Github，VScode会提示发布分支。选择",[33,2386,2387],{},"publish branch","即可将当前功能分支推送到远程仓库。",[75,2390,2391],{},[78,2392],{"alt":31,"src":2393},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067764516-85017976.webp",[16,2395,2396],{},[19,2397,2398],{},"审查并修改PR",[75,2400,2401],{},"创建成功后，VScode会进入PR的Review Mode。在这里可以查看提交记录和文件差异、留言、邀请审查，也可以继续修改代码。",[75,2403,2404],{},"可以查看合并差异:",[75,2406,2407],{},[78,2408],{"alt":31,"src":2409},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067924816-f471716b.webp",[75,2411,2412],{},[78,2413],{"alt":31,"src":2414},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067950428-546ebd4d.webp",[75,2416,2417],{},"如果需要根据审查意见修改代码，保持在当前功能分支上，然后继续使用源代码管理页面进行Commit.也就是可以继续修改.",[75,2419,2420],{},[78,2421],{"alt":31,"src":2422},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787067992272-a06147b4.webp",[75,2424,2425,2426,2429],{},"同样先add再commit本次修改,可以命名为",[33,2427,2428],{},"Add PR demo2",".",[75,2431,2432],{},[78,2433],{"alt":31,"src":2434},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068021566-fb6e4d49.webp",[75,2436,2437],{},"最后Push。新的提交会自动加入当前PR，不需要重新创建PR。",[75,2439,2440],{},[78,2441],{"alt":31,"src":2442},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068141475-fe774f6d.webp",[75,2444,2445],{},"可以看到如图,两次commit都被PR包含了.",[75,2447,2448],{},[78,2449],{"alt":31,"src":2450},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068203009-6768f4a0.webp",[75,2452,2453],{},"也可以看到文件差异里,两次提交都被可以被合并到main了.",[75,2455,2456],{},[78,2457],{"alt":31,"src":2458},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068234996-9c2f6fa0.webp",[16,2460,2461],{},[19,2462,2463],{},"合并PR并清理分支",[75,2465,2466,2467,2470],{},"审查通过且自动检查完成后，拥有仓库写入权限的成员可以在PR详情页点击",[33,2468,2469],{},"Merge","完成合并。",[75,2472,2473],{},[78,2474],{"alt":31,"src":2475},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068282082-21f37f97.webp",[75,2477,2478],{},[78,2479],{"alt":31,"src":2480},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068295774-46294b05.webp",[75,2482,2483,2484,2486],{},"合并完成后，VScode会提示删除远程和本地的功能分支。确认PR已经正确合并后再进行删除，最后切换回main分支并点击",[33,2485,2205],{},"获取最新代码。",[75,2488,2489],{},[78,2490],{"alt":31,"src":2491},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068313339-dfe5dbc9.webp",[75,2493,2494],{},[78,2495],{"alt":31,"src":2496},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068345756-fd3adb23.webp",[75,2498,2499],{},"紧接着PR会被自动关闭.",[75,2501,2502],{},[78,2503],{"alt":31,"src":2504},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1787068378293-1ef31793.webp",[12,2506,2507],{"id":2507},"最常用的几个功能扩展",[85,2509,2511],{"id":2510},"向无仓库权限提交pr","向无仓库权限提交PR",[75,2513,2514,2515,2518],{},"比如我用另一个号新建了一个仓库，但是我的",[33,2516,2517],{},"tungchiahui","账号并没有这个仓库的权限：",[26,2520,2523],{"className":2521,"code":2522,"language":1464,"meta":31},[1462],"https:\u002F\u002Fgithub.com\u002Fdongjiahui0204\u002FTEST_PR\n",[33,2524,2522],{"__ignoreMap":31},[75,2526,2527],{},"首先要先Fork这个仓库：",[75,2529,2530],{},[78,2531],{"alt":31,"src":2532},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791766693309-cdb75187.webp",[75,2534,2535],{},[78,2536],{"alt":31,"src":2537},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791766729815-36c20101.webp",[75,2539,2540],{},"Fork完毕了：",[75,2542,2543],{},[78,2544],{"alt":31,"src":2545},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791766763760-b8ff6113.webp",[75,2547,2548],{},"克隆下自己的这个仓库：",[26,2550,2552],{"className":28,"code":2551,"language":30,"meta":31,"style":31},"git clone https:\u002F\u002Fgithub.com\u002Ftungchiahui\u002FTEST_PR.git\n",[33,2553,2554],{"__ignoreMap":31},[36,2555,2556,2558,2560],{"class":38,"line":39},[36,2557,69],{"class":42},[36,2559,1110],{"class":46},[36,2561,2562],{"class":46}," https:\u002F\u002Fgithub.com\u002Ftungchiahui\u002FTEST_PR.git\n",[75,2564,2565],{},"打开VScode：",[26,2567,2569],{"className":28,"code":2568,"language":30,"meta":31,"style":31},"cd .\u002FTEST_PR\ncode .\n",[33,2570,2571,2578],{"__ignoreMap":31},[36,2572,2573,2575],{"class":38,"line":39},[36,2574,109],{"class":72},[36,2576,2577],{"class":46}," .\u002FTEST_PR\n",[36,2579,2580,2582],{"class":38,"line":53},[36,2581,33],{"class":42},[36,2583,1890],{"class":46},[75,2585,2586],{},"创建分支：",[75,2588,2589],{},[78,2590],{"alt":31,"src":2591},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767194836-0d94d54b.webp",[75,2593,2594],{},[78,2595],{"alt":31,"src":2596},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767216106-e831cc78.webp",[75,2598,2599],{},[78,2600],{"alt":31,"src":2601},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767247652-58d4f264.webp",[75,2603,2604],{},"随便起个分支名字：",[75,2606,2607],{},[78,2608],{"alt":31,"src":2609},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767265984-87d2635b.webp",[75,2611,2612],{},"在新分支里，随便编辑点什么：",[75,2614,2615],{},[78,2616],{"alt":31,"src":2617},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767004990-09caa229.webp",[75,2619,2620],{},"然后commit,push提交到你的仓库。",[75,2622,2623],{},[78,2624],{"alt":31,"src":2625},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767067058-c4094dfa.webp",[75,2627,2628],{},[78,2629],{"alt":31,"src":2630},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767298689-4c8dc2c3.webp",[75,2632,2633],{},"应该选自己的：",[75,2635,2636],{},[78,2637],{"alt":31,"src":2638},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767326310-bca79524.webp",[75,2640,2641],{},"回到自己的仓库：",[75,2643,2644],{},[376,2645,2646],{"href":2646,"rel":2647},"https:\u002F\u002Fgithub.com\u002Ftungchiahui\u002FTEST_PR",[1007],[75,2649,2650],{},[78,2651],{"alt":31,"src":2652},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767383981-4611b415.webp",[75,2654,2655,2656,2659,2660,2663,2664,2659,2667,2670],{},"选择把自己的",[33,2657,2658],{},"tungchiahui\u002FTEST_PR","的",[33,2661,2662],{},"prprpr","分支提交PR到",[33,2665,2666],{},"dongjiahui0204\u002FTEST_PR",[33,2668,2669],{},"main","分支。",[75,2672,2673],{},[78,2674],{"alt":31,"src":2675},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767426765-082181a4.webp",[75,2677,2678],{},"然后你写一些你提交的是什么东西写在这个描述里，然后好让人家维护者方便看你提交的是啥。",[75,2680,2681],{},[78,2682],{"alt":31,"src":2683},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767511818-d88b2b1b.webp",[75,2685,2686],{},"如下图你就提交成功了。",[75,2688,2689],{},[78,2690],{"alt":31,"src":2691},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767600485-dcca3754.webp",[75,2693,2694,2695,2698],{},"接下来，我切换",[33,2696,2697],{},"dongjiahui0204","账号介绍维护者如何合并别人提交上来的PR",[75,2700,2701],{},[78,2702],{"alt":31,"src":2703},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767684096-1245f8c1.webp",[75,2705,2706],{},"我可以点合并PR：",[75,2708,2709],{},[78,2710],{"alt":31,"src":2711},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767707114-6330cf4e.webp",[75,2713,2714],{},"这就合并成功了",[75,2716,2717],{},[78,2718],{"alt":31,"src":2719},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767728339-71a7904f.webp",[75,2721,2722],{},"内容已经被合并了：",[75,2724,2725],{},[78,2726],{"alt":31,"src":2727},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767757793-c4a76833.webp",[75,2729,2730],{},[78,2731],{"alt":31,"src":2732},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F29\u002F1791767790182-25902524.webp",[2734,2735,2736],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":31,"searchDepth":53,"depth":53,"links":2738},[2739,2740,2741,2742],{"id":14,"depth":66,"text":14},{"id":83,"depth":66,"text":83},{"id":1947,"depth":66,"text":1948},{"id":2507,"depth":66,"text":2507},0,"0200","2023-12-29","2023-12-29-git-jiao-xue","\u002Fwiki\u002F2023-12-29-git-jiao-xue","Git教学","md",true,false,{},"\u002Fwiki\u002F2023-12-29-git-jiao-xue\u002F0200-git-shi-cao",{"title":5,"description":31},"wiki\u002F2023-12-29-Git教学\u002F0200-Git实操","BESUm0RabmkV9HbKmukrvBr0TxHFwZdvnB7SkOgBNsw",[2758,2764,2766,2772,2778],{"path":2759,"stem":2760,"title":2761,"authors":2762,"date":2745,"chapterOrder":2763,"chapterDepth":2743,"docKey":2746,"docRoot":2747,"docTitle":2748,"isWikiDoc":2750,"isWikiIndex":2751},"\u002Fwiki\u002F2023-12-29-git-jiao-xue\u002F0100-git-jian-jie","wiki\u002F2023-12-29-Git教学\u002F0100-Git简介","Git简介",[7],"0100",{"path":2753,"stem":2755,"title":5,"authors":2765,"date":2745,"chapterOrder":2744,"chapterDepth":2743,"docKey":2746,"docRoot":2747,"docTitle":2748,"isWikiDoc":2750,"isWikiIndex":2751},[7],{"path":2767,"stem":2768,"title":2769,"authors":2770,"date":2745,"chapterOrder":2771,"chapterDepth":2743,"docKey":2746,"docRoot":2747,"docTitle":2748,"isWikiDoc":2750,"isWikiIndex":2751},"\u002Fwiki\u002F2023-12-29-git-jiao-xue\u002F0300-gao-ji-gong-ju","wiki\u002F2023-12-29-Git教学\u002F0300-高级工具","高级工具",[7],"0300",{"path":2773,"stem":2774,"title":2775,"authors":2776,"date":2745,"chapterOrder":2777,"chapterDepth":2743,"docKey":2746,"docRoot":2747,"docTitle":2748,"isWikiDoc":2750,"isWikiIndex":2751},"\u002Fwiki\u002F2023-12-29-git-jiao-xue\u002F0400-chang-jian-wen-ti","wiki\u002F2023-12-29-Git教学\u002F0400-常见问题","常见问题",[7],"0400",{"path":2747,"stem":2779,"title":2780,"authors":2781,"date":2745,"chapterOrder":2782,"chapterDepth":2743,"docKey":2746,"docRoot":2747,"docTitle":2748,"isWikiDoc":2750,"isWikiIndex":2750},"wiki\u002F2023-12-29-Git教学\u002Findex","Git教程",[7],null,[2784,2786,2789,2792],{"name":7,"image":2785},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":2787,"image":2788},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":2790,"image":2791},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":2793,"image":2794},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431900988]