【總結】GitHub第一天

YIYIYI1205發表於2018-05-04

參考連結https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374831943254ee90db11b13d4ba9a73b9047f4fb968d000

 

在Mac OS X上安裝Git

1.在https://code.google.com/archive/p/git-osx-installer/downloads中下載安裝即可

2.安裝Xcode,Xcode整合了Git,不過預設沒有安裝,你需要執行Xcode,選擇選單“Xcode”->“Preferences”,在彈出視窗中找到“Downloads”,選擇“Command Line Tools”,點“Install”就可以完成安裝了。

個人兩種都裝了,似乎第一種更為方便

安裝完成 後,在終端輸入 git 可以檢視 版本

 

工作區和暫存區

先明白工作區、暫存區對每一步指令理解有幫助

 

工作區(Working Directory)

就是你在電腦裡能看到的目錄,比如我的learngit資料夾就是一個工作區:

 

版本庫(Repository)

工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。

Git的版本庫裡存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還有Git為我們自動建立的第一個分支master,以及指向master的一個指標叫HEAD

1.mkdir 檔名   建立一個檔案(這個檔案目錄作為工作區)

2.cd 檔名  進入這個檔案

3.pwd命令用於顯示當前目錄

4.git init命令把這個目錄變成Git可以管理的倉庫(版本庫)

 

當前目錄下多了一個.git的目錄,這個目錄是Git來跟蹤管理版本庫的,不要手動修改這個目錄裡面的檔案。

.git目錄預設是隱藏的,用ls -ah命令就可以看見。

5.在工作區(檔名目錄下)建立檔案(readme.txt)

6.git add 檔名告訴Git,把檔案新增到暫存區   git add -A

7.git commit -m "填寫提交的說明"告訴Git,把檔案提交到版本庫

8.git status檢視工作區檔案的狀態,是否修改、刪除、新增檔案

9.git diff可以檢視修改內容

10.git log檢視歷史記錄

如果輸出資訊太多,git log--pretty=oneline

HEAD表示當前版本,上一個版本就是HEAD^,上上一個版本就是HEAD^^,版本號的commit後面的內容

 

11.git reset --hard HEAD^ 跳到上一個版本

git reset --hard 版本號前幾位 跳到某一個版本

12.git reflog 記錄每一次命令

13.git checkout -- file可以丟棄工作區的修改

1)自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態;

2)已經新增到暫存區後,又作了修改,現在,撤銷修改就回到新增到暫存區後的狀態。

14.修改後,新增到暫存區,想要撤銷,先把暫存區的回到工作區:git reset HEAD file可以把暫存區的修改撤銷掉(unstage),重新放回工作區

再用git checkout -- file可以丟棄工作區的修改(這一步好像不需要做)

15.git checkout 切換到另一個分支

16.刪除檔案:rm 檔名

從版本庫中刪除: git rm 檔名

在工作區刪除檔案後,想把版本庫的檔案恢復到工作區:git checkout --檔名

遠端倉庫

由於你的本地Git版本庫和GitHub版本庫之間的傳輸是通過SSH加密的,所以,需要設定

 

ssh-keygen -t rsa -C "youremail@example.com"

在自己電腦裡找到.ssh檔案,裡面有id_rsaid_rsa.pub兩個檔案,id_rsa是私鑰,不能洩露出去,id_rsa.pub是公鑰。

id_rsa.pub 中的內容複製到github中setting中的ssh key中即可

 

新增遠端庫(意思就是把本地的檔案上傳到github上)

git commit 後 已經把檔案提交到本地git倉庫中

在github中new repository,起一個名字

 

git remote add origin git@github.com:使用者名稱/ repository的名字.git
$ git push -u origin master

就可以在github庫中看到檔案了

從現在起,只要本地作了提交,就可以通過命令git push -u origin master推送了

從遠端庫克隆(把別人的程式碼下載到自己的電腦上)

git clone git@github.com:要克隆的使用者名稱/要克隆的庫.git

 

 

1.問題:git clone時,出現

 

fatal: Could not read from remote repository.Please make sure you have the correct access rights and the repository exists.            

 

出現這個問題是因為沒有在github賬號新增SSH key

解決方法如下:

ssh-keygen -t rsa -C "username" (注:username為你git上的使用者名稱)

剩下步驟和遠端倉庫設定ssh key一樣

參考:https://blog.csdn.net/u014343528/article/details/48787221

2.問題:

$ git push -u origin master

To git@github.com:yangchao0718/cocos2d.git

 ! [rejected]        master -> master (non-fast-forward)

error: failed to push some refs to 'git@github.com:yangchao0718/cocos2d.git

出現錯誤的主要原因是github中的README.md檔案不在原生程式碼目錄中

參考網址中的方法還是不行,所以把github中的readme.md檔案刪掉或者建立倉庫時不要選則自動建立readme.md檔案

參考網址:https://jingyan.baidu.com/article/f3e34a12a25bc8f5ea65354a.html

3.問題:輸入git remote add origin git@github.com:使用者名稱/ repository的名字.git後

fatal: remote origin already exists.

https://blog.csdn.net/dengjianqiang2011/article/details/9260435

說origin已經存在

就用git remote rm origin 刪除

在github上克隆程式碼:

下載Node.js

 

  1. 用Git進行Clone
git clone https://github.com/ALISURE/DianDangHang.git
  1. 設定gulp
npm install --save-dev gulp
  1. 安裝gulp外掛
npm install gulp-clean-css gulp-uglify gulp-rename gulp-rev gulp-clean gulp-rev-collector gulp-file-include gulp-autoprefixer --save-dev

然後就可以在自己的電腦中找到下載下來的檔案,其實在github中可以直接下載zip檔案

相關文章