1. git 配置:
git config --global user.name "xxx" //配置用戶名
git config --global user.email "xxx" //配置郵箱
2.配置 sshkey
1. 創建本地 ssh : ssh-keygen -t rsa -C "碼雲的註冊郵箱"
2. 在碼雲 中添加這個 sshkey :
複製 C:\Users\cheng\.ssh\id_rsa.pub 文件中的內容;
在碼雲--》修改資料--》SSH公鑰--》粘貼
3. 驗證: ssh -T [email protected]
接着按yes
3.建立倉庫 repository
1.git init //-- 創建本地倉庫
2.git remote add origin [email protected]:用戶名/倉庫名.git //-- 把本地倉庫和遠程倉庫關聯起來,
如果不執行這個命令的話,每次 push 的時候都需要指定遠程服務器的地址
4.從遠程倉庫中下載新的改動
1.git pull origin master
5.提交本地修改到遠程倉庫中
git add
git add -A -- 將改動添加到本地倉庫中
git rm xxx -- 從本地倉庫中刪除指定文件
git rm -r xxx -- 從本地倉庫中刪除指定文件夾
git commit -m "註釋" -- 把本機緩存中的內容提交到本機的 HEAD 裏面
git push origin master -- 把本地的 commit push 到遠程倉庫中
git clone SSH地址或HTTPS地址 --吧項目從遠程倉庫中克隆到本地
6、總結git一般的add添加的步驟 就是添加指定需要哪一個文件上傳到我們遠程的倉庫,
簡單的說你就是想上傳哪一個功能
第一步:一般是需要初始化一個文件夾裏面的內容,git init
第二步:就是需要把遠程的倉庫的東西下載下來後,
2.git remote add origin [email protected]:用戶名/倉庫名.git
//-- 把本地倉庫和遠程倉庫關聯起來, 如果不執行這個命令的話,
每次 push 的時候都需要指定遠程服務器的地址
3、從遠程倉庫中下載新的改動
1.git pull origin master
4、 這一步就是你想添加哪一個文件上傳遠程倉庫的語句
$ git add 加上是文件的指定的名字還有後綴的。
例如:$ git add git的簡單步驟.txt
5、 git commit -m "註釋" -- 把本機緩存中的內容提交到本機的 HEAD 裏面
這裏只是要告訴團隊你添加了什麼進去這個倉庫,所以要解釋一下是什麼來着。
6、 git push origin master -- 把本地的 commit push 到遠程倉庫中
這裏要告訴我們要把本地的倉庫同步整一個內容到遠程倉庫裏面。
----------------------------------------------------------------------------
7、 要隨時掌握工作區的狀態,使用git status命令。
如果git status告訴你有文件被修改過,用git diff可以查看修改內容
-Git is a version control system. git前面的減號是代表原來的
+Git is a distributed version control system. git前面是加號代碼有其他單詞加家來所以要注意
接下來我們就把修改後的文件再一次上傳到倉庫。一樣需要兩步的操作
這一步就是你想添加哪一個文件上傳遠程倉庫的語句
第一步: $ git add 加上是文件的指定的名字還有後綴的。
例如:$ git add git的簡單步驟.txt
第二步 git commit -m "註釋" -- 把本機緩存中的內容提交到本機的 HEAD 裏面
這裏只是要告訴團隊你添加了什麼進去這個倉庫,所以要解釋一下是什麼來着。
第三步:我們再用git status命令看看倉庫的當前狀態
Git告訴我們當前沒有需要提交的修改,而且,如果括號裏面出現
工作目錄是乾淨(working directory clean)的。
=========================================================================================
8、 版本回退 意思就是我們提交了好多個修改的文本的意思
版本控制系統肯定有某個命令可以告訴我們歷史記錄,在Git中,我們用git log命令查看:
就是告訴我們在一個記事本里面修改了多少次的代碼,還有我們提交commit多少次,
都是顯示我們級註解指示出來那些東西。
感覺如果嫌輸出信息太多,看得眼花繚亂的,可以試試加上--pretty=oneline參數
git log --pretty=oneline
這個只是簡單的看出來前面的一大串的字符串的是commit id(版本號) 後面的中文就是註解
感覺一般是從上往下看的都是第一個是最新的版本,最後的最舊的
094f710f83a60d75990ae54566fd64c1ec3a4672 修改後的文件添加了一個distributed
dccc49261fbd0bc35fd5d6924e5198cc6624c1bc 演示git
90628f5906a51b8c11c7741df97aee172c5c6cd0 git的add步驟
c416057f1a31f3c0d5ff30b2359d1404cacfa6be test
912a2642a0e6d4587e2f3a6e4464a1f82036e40a Initial commit
現在我們就開始查看哪一個版本的歷史到底是什麼來着了
在Git中,用HEAD表示當前版本,
上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,
所以寫成HEAD~100。
總結:
我們一般是按照三步走
第一步就是爲了查看我們提交修改這個版本多少次了
$ git log --pretty=oneline
第二步我們是想查看哪一個版本,主要是看那個註解帥選的
$ git reset --hard HEAD^
還有最後一步就是查看這個版本里面的內容是什麼是不是與註解的說的一樣的意思
$ cat 加上你剛纔的文本的名字加後綴
$ cat readme.txt
最後還有一個非常強大的命令就是令git reflog用來記錄你的每一次命令
這個記錄着你以前提交過的 前面第一個一大字符串就是commit的ID來着
=================================================================================================
9、
所以,git add命令實際上就是把要提交的所有修改放到暫存區(Stage),
然後,執行git commit就可以一次性把暫存區的所有修改提交到分支。
git diff #是工作區(work dict)和暫存區(stage)的比較
git diff --cached #是暫存區(stage)和分支(master)的比較
==========================================================
10、撤銷修改
一般先用$ git status查看情況
第一種情況:下面的一條就是把工作區與那個暫存區,進行撤銷而已,
意思是你在你的工作區增刪改查了,後來還沒有添加到暫存區,可以利用下面的語句撤銷
Git會告訴你,git checkout -- file可以丟棄工作區的修改
git checkout -- 記得是空格後再加上什麼文件被修改
例子$ git checkout -- readme.txt
第二種情況:我們就是不小心add添加到了暫存區,我們該怎麼樣撤銷我們不小心犯錯誤的的東西
所以就是利用下面的語句
這個就是我們需要把那個暫存區還沒有提交commit到那個板庫裏面,
我們纔可以進行對修改撤銷我們的一些沒有必要的操作
Git同樣告訴我們,用命令git reset HEAD file可以把暫存區的修改撤銷掉(unstage),重新放回工作區:
多了一步$ git reset HEAD readme.txt
我們對這樣的情況下可以這樣的操作
第一步我們需要git status 查看情況
第二步;用命令git reset HEAD file可以把暫存區的修改撤銷掉(unstage)
git reset命令既可以回退版本,也可以把暫存區的修改回退到工作區。當我們用HEAD時,表示最新的版本。
第三步:這一步是最重要的一步,
因爲我們每一個操作都是需要經歷過的纔算撤銷成功$ git checkout -- 加文件名字與類型
$ git checkout -- readme.txt
===================================================================================
11、刪除的步驟
第一步:先添加一個文件
$ git add test.txt
第二步:一般情況下,你通常直接在文件管理器中把沒用的文件刪了,或者用rm命令刪了
$ rm 加文件的名字與類型
$ rm test.txt
第三步:$ git status 查看當前的情況
現在你有兩個選擇,一是確實要從版本庫中刪除該文件,那就用命令git rm刪掉,並且git commit:
$ git rm test.txt
$ git commit -m "remove test.txt"
記得以後commit到我們的版倉庫裏面後都是需要執行push推送哪一步
$ git push
$ ls 是代表這個倉庫裏面有多少當前的目錄。他會列出來
git的add步驟.txt
README.md
readme1.txt
=======================================================================================================
12、創建與合併的分支的知識點
1、git checkout命令加上-b參數表示創建並切換,相當於以下兩條命令
$ git branch dev 這個也就是卻換git branch命令會列出所有分支,當前分支前面會標一個*號。
branch是分支的意思
$ git checkout dev
一、$ git checkout -b dev 這個就是利用創建一個分支
創建分支:git branch <name>
切換分支:git checkout <name>
創建+切換分支:git checkout -b <name> 這個就是只需要記住的語句
二、 接下來就是利用我們的 $ git branch 就是查看所有的分支 還有就是當前分支前面會標一個*號。
查看分支:git branch
三、現在,dev分支的工作完成,我們就可以切換回master分支
語句就是$ git checkout master checkout也就是切換的意思
四、git merge命令用於合併指定分支到當前分支。
合併後,再查看readme.txt的內容,就可以看到,和dev分支的最新提交是完全一樣的。
注意到上面的Fast-forward信息,Git告訴我們,這次合併是“快進模式”,
也就是直接把master指向dev的當前提交,所以合併速度非常快。
合併某分支到當前分支:git merge <name> <name>這個就是我們的分支的名字來着
五、$ git branch -d dev 這個就是刪除我們那個Dev的語句 $ git branch -d 加上你的分支
最後我們還有需要時刻需要打這一條語句看剩下
查看分支:git branch
六、總結:
查看分支:git branch
創建分支:git branch <name>
切換分支:git checkout <name>
創建+切換分支:git checkout -b <name>
合併某分支到當前分支:git merge <name>
如果出現衝突這一步是最重要的一步
還一到時候子啊提交,
用帶參數的git log也可以看到分支的合併情況
$ git log --graph --pretty=oneline --abbrev-commit
接下來就是刪除的語句
刪除分支:git branch -d <name>
分支管理的方法策略
一、創建分支
$ git checkout -b dev 然後就是修改我們的代碼文件
二、然後在卻換回來我們的主分支
$ git checkout master
三、準備合併dev分支,請注意--no-ff參數,表示禁用Fast forward:
$ git merge --no-ff -m "merge with no-ff" dev
四、合併後,我們用git log看看分支歷史:
$ git log --graph --pretty=oneline --abbrev-commit