1.若是錯(cuò)誤的話,先把項(xiàng)目pull 下來稿存,然后再上傳。
ssh方式上傳代碼:
-公鑰和私鑰半抱,兩者之間是有關(guān)聯(lián)的胯杭。
-生成公鑰驯杜,和私鑰,
ssh-keygen -t rsa -C "xxx@qq.com" (ssh-keygen生成私鑰做个,-t 是指定加密的方式鸽心,-C是指定郵箱),然后一路按回車就可以了居暖。然后在github上面設(shè)置本地git的私鑰放到github上面顽频,就可以不用每次上傳代碼都要輸入github密碼。
***git fetch origin open-change-bin(關(guān)聯(lián)某個(gè)項(xiàng)目中的某個(gè)分支太闺,open-change-bin是分支名)糯景。
2.合并分支要在主分支那合并。合并后還要提交才可以省骂。在ide里面操作也是一樣的蟀淮。
git使用:(windows命令行和git提供的命令都可以進(jìn)行g(shù)it的命令操作),github是托管git項(xiàng)目的網(wǎng)站(即服務(wù)器)
***git clone https://github.com/electron/electron-quick-start.git electron-demo --depth 1(--depth 1 表示的是只克隆最近一次的提交钞澳,把之前的提交忽略掉灭贷。)
1.初始化git創(chuàng)庫,命令:git init (在項(xiàng)目目錄打開git bash 輸入命令略贮,這個(gè)創(chuàng)庫會存放git對我們項(xiàng)目代碼進(jìn)行備份的文件)
在目錄文件夾下面打開git bash的窗口 然后輸入git init的命令就會生成git的目錄文件夾甚疟,也可以叫g(shù)it的創(chuàng)庫。最終git會幫我們把代碼都備份到.git的目錄下面逃延。
2.在那個(gè)目錄文件下面就可以新建目錄來寫代碼了览妖,其實(shí)和正常是一樣的,只不過揽祥,在那個(gè)項(xiàng)目目錄下多了一個(gè).git的文件讽膏。要在當(dāng)前項(xiàng)目那里打開git bash才可以,這樣才是操作當(dāng)前項(xiàng)目的
3.配置個(gè)人信息(就是在git中設(shè)置當(dāng)前使用的用戶是誰拄丰,就是在那個(gè)開發(fā)的目錄府树,可以有很多人往git里面?zhèn)浞荽a俐末,在那個(gè)目錄下你和別人備份代碼的命令都是一樣的,所以設(shè)置git的個(gè)人信息來區(qū)分)
git config --global user.name "djs" (設(shè)置用戶名奄侠,user.name是git里面提供的對象)
git config --global user.email 'xxxx@qq.com'(配置郵箱沒有報(bào)錯(cuò)就成功了卓箫,user.email也是git里面提供的對象)
這個(gè)設(shè)置好個(gè)git的人信息后,以后的每一次備份代碼也會把個(gè)人信息備份垄潮,這樣日后就可以看到這代碼是誰做的了烹卒。
4.把代碼放到.git倉庫中
1.先把代碼放到大門口:git add ./git-sy.py(當(dāng)前目錄下的xx文件)
2.把代碼放到房間里(即是大門口的東西放到房間里): git commit -m "我們完成了第一個(gè)功能" commit(即是把放在大門口的東西全部都放進(jìn)去),-m(即是說明弯洗,你修改(放 了什么)必須說明)
git會比較工作區(qū)的代碼和房間里面的代碼是否是一樣的旅急,如果是一樣的那就會說明是干凈的。
3.git add ./ (相當(dāng)于本地備份可以把當(dāng)前文件下修改過的文件或者新建的文件都保存到倉庫中去)牡整,然后再用git commit -m "xx和xx"把他們一次性地推到房間去藐吮。
4.git commit --all -m '一次性操作'(這個(gè)命令不用先放到倉庫的門口了,一次性推進(jìn)房間去逃贝,這個(gè)房間就是我們所說的版本庫)
5.git log(能夠查看提交谣辞,包括用戶名,提交時(shí)間等信息)
查看當(dāng)前的狀態(tài)
命令:git status 可以用來查看當(dāng)前代碼有沒有被放到倉庫中去秋泳。
有紅色的代表修改的文件潦闲,或者沒有添加到倉庫的文件。
6.git log --oneline(可以看到簡介版的日志)
7.git reset --hard Head0(回退到最近一個(gè)版本迫皱,Head1的話就回退到倒數(shù)第二個(gè)版本歉闰,0,1都是索引,離當(dāng)前最近的索引)依次類推卓起。執(zhí)行完命令后再回到pycharm和敬,就會發(fā)現(xiàn)代碼已經(jīng)退回到你想找的版本那里了。
8.git reset --hard e543c8b(可以通過版本號來回退戏阅,這樣就不用寫上面的索引了昼弟,e543c8b版本號)
9.git reflog (能夠查看所有操作的版本號,這樣就可以通過版本號隨便會回退到那一個(gè)版本了)
10.git branch fzdev(創(chuàng)建分支奕筐,git branch(可以查看有多少分支)后面的那個(gè)是分支的名字)
git branch (查看創(chuàng)建的分支) git commit -m "這個(gè)是新建的分支" 新建分支后再添加進(jìn)倉庫舱痘。
11.git checkout master(切換分支,在新分支修改功能后要切換會master分支把他們合并离赫,讓同事也可以知道和使用)
12.git merge fzdev (合并分支芭逝,在master那合并分支。把當(dāng)前分支與指定的分支(fzdev),進(jìn)行合并渊胸,..當(dāng)前分支是指的是‘git branch’命令輸出的前面有*號的分支旬盯,如( fzdev
- master)中的*master)分支就相當(dāng)于平衡宇宙。
13.剛創(chuàng)建分支的時(shí)候,分支里面的東西和master里面的內(nèi)容是一樣的胖翰。
14.git branch -d fzdev(刪除分支接剩,注意這個(gè)必須要在master下面刪除分支,不能在fzdev分支下面刪除萨咳,在自己下面是不能刪除自己的懊缺。)
15.合并時(shí)如果有沖突,需要手動(dòng)去處理某弦,處理后還需要再提交一次桐汤。
16.在git里面?zhèn)浞莸拇a是看不見的而克,因?yàn)間it已經(jīng)把修改后的代碼轉(zhuǎn)換成二進(jìn)制的形式了靶壮,不要去里面看代碼或者修改里面的文件。
17.github當(dāng)做git的服務(wù)器來用员萍,github和git是完全不同的東西腾降。
18.把代碼push到github: git push https://github.com/djs123456/test110.git master(那個(gè)鏈接是github上面對應(yīng)項(xiàng)目的鏈接,后面那個(gè)master是github上面的master碎绎,github上面也有master和分支螃壤。本地也有master和分支。會把當(dāng)前內(nèi)容上傳到遠(yuǎn)程的服務(wù)器上)
19.在github上面拿代碼:1.git pull 地址 (直接新建一個(gè)文件夾拉下來(注意:本地要初始化一個(gè)倉庫(執(zhí)行 git init ))筋帖,那個(gè)名字也不一定是master,也可以是其他的分支奸晴,拿下來后就可以在git里面看提交次數(shù)和所有的操作)
2.git clone [地址] 會得到遠(yuǎn)程倉庫相同的數(shù)據(jù),如果多次執(zhí)行會覆蓋本地內(nèi)容(開發(fā)的時(shí)候一般是用pull來拉)
(clone是本地沒有repository(倉庫)時(shí)日麸,將遠(yuǎn)程repository整個(gè)下載過來寄啼。
pull是本地有repository時(shí),將遠(yuǎn)程repository里新的commit數(shù)據(jù)(如有的話)下載過來代箭,并且與本地代碼merge)
19.修改后先在本地提交墩划,然后再push到服務(wù)器。然后別人想拿在pull下來嗡综。你修改了你的代碼乙帮,有從別人那里拉來新的代碼,可能會造成沖突极景,所以要選擇性的選取刪掉一個(gè)察净。要拿到最新的數(shù)據(jù),日志才能相同盼樟。當(dāng)兩個(gè)人都修改了不同的文件氢卡,一個(gè)人要先pull另外一個(gè)人的最新代碼,然后再push上去恤批。(因?yàn)槿绻麅蓚€(gè)人都同時(shí)push的話异吻,沖突就會在服務(wù)器那里體現(xiàn),就不能更改了),所以要先在本地修改正確后再push到服務(wù)器诀浪。(記得一定要先pull拿到最新的數(shù)據(jù)棋返,再push上去。先pull 再push )
20.git remote add origin 地址 (把url改成變量origin)
然后再用 git push origin master -f 來進(jìn)行push 就可以了(就不用復(fù)制那個(gè)這么長的地址了雷猪,那個(gè)變量不是全局的睛竣,僅僅作用于當(dāng)前的目錄)
git push origin -u master -f(-f不行的話后面加個(gè)f)當(dāng)我們在push時(shí),加上-u參數(shù)(這里要注意要先add才可以)求摇,那么在下一次push時(shí)射沟,我們只需要寫上‘git push’就能上傳我們的代碼。(加上-u之后与境,git會把當(dāng)前分支與遠(yuǎn)程的指定分支進(jìn)行關(guān)聯(lián)验夯,git push origin master)pull 也是一樣。
exit() 退出
git clone https:xxxxx(github上面的http地址就可以把他下載下來了)
你就能在任何時(shí)候安全地停止爬蟲(按 Ctrl-C 或者發(fā)送一個(gè)信號)摔刁』幼恢復(fù)這個(gè)爬蟲也是同樣的命令:
1 git config --global user.name 'neptune' (在本地配置用戶名)
git push origin smart (表示上傳本文件的smart文件)
2 git config --global user.email 'xxx@qq.com'(配置郵箱)
3 git config --global -l (查看配置的信息)
4 git init (在目錄下輸入git init 就可以在這個(gè)目錄下進(jìn)行g(shù)ithub的操作了,前面那兩步是配置用戶名和郵箱)
5 git remote add origin 地址(把本地的文件同步到github上)
6 git status (查看本地發(fā)生了那些變化共屈,同步之前查看一下)
7 git add * git add 文件名(提交修改單個(gè)文件)
8 git commit -m 'first_commit'(7和8這兩個(gè)命令是讓本地的文件生效绑谣,并沒有推送到遠(yuǎn)端)
9 git push -u origin master (將本地的修改的項(xiàng)目推送到github上面)
10.github 的使用
1.要把本地的ssh的秘鑰添加到github上面
2.在IDE里面運(yùn)行命令 git init 初始化項(xiàng)目的創(chuàng)庫
3.在IDE里面 運(yùn)行命令 git add . 把項(xiàng)目推進(jìn)創(chuàng)庫里面
4.在github 上剛開始創(chuàng)建項(xiàng)目的時(shí)候會有一個(gè)初始化的代碼的,直接安裝它那復(fù)制粘貼那些命令在項(xiàng)目里面運(yùn)行就可以了拗引。
-
push分支的時(shí)候要注意push在那個(gè)分支借宵,不要push到主分支。
image.png
11.merge是在主分支去merge你的代碼矾削,有沖突的話可以選擇壤玫。
12.在IDE里面新建自己的branch的時(shí)候,要注意是在哪里建的怔软,比如要在主分支下面來建就要切換到主分支垦细,然后branch,要讓加上自己的名字就可以了挡逼。一定要記得是想在那個(gè)分支下面branch括改。