工作區:就是你在電腦上看到的目錄,比如目錄下testgit裡的檔案(.git隱藏目錄版本庫除外)。
版本庫:工作區有乙個隱藏目錄.git,這個不屬於工作區,這是版本庫。
git add 和 git commit 是把檔案先新增到暫存區,再提交到版本庫分支上
分支的增刪改查
git branch 建立分支
git branch -d 刪除分支
git branch -v 檢視所有分支
git branch next
git push origin --delete test 刪除遠端 test 分支
分支的切換:實際上,head在**,當前分支就是哪個
git checkout 原理:通過移動head檢出版本
git checkout 切換到該分支
git checkout -b 建立並切換到該分支
git checkout 將其引用到任何乙個物件上
git checkout - 切換到到上乙個分支
git checkout – filename 將檔案內容從暫存區複製到工作區
git checkout 《指標名》 把 head 切換到該指標上,但會造成 head 與 master 分離,造成 detached head 效果,此時不宜提交,因為 master 指標沒有回退,當 head 回到 master 上時,之前提交的**可能被**。這種操作一般只用來檢視**
分支的合併
git marge test 把 test 分支合併到當前分支
git marge next --no-ff 不使用 fast-forward
git rebase 修剪提交歷史的基線,即『變基』
git rebase master 在 master 分支上重演其他分支的所有指標資訊,並且合併進來產生新的指標
git rebase --onto master 《指標名》 在 master 分支上重演其他分支的最後一次指標資訊,並(同上)
注:git rebase 不可在非 master 分支上使用
分支檢視
git cat-file -p head 檢視當前分支和其父分支
git tag
git tag 建立別名
github上建立乙個倉庫後,在本地任意一資料夾git init,然後 git remote add origin + 倉庫位址進行關聯,這時候直接git pull,或 git push 都要加 origin master,這是為什麼?
你pull操作是要拉取某個分支的**,但是你本地沒有任何分支,所以需要指定源(主機名)和分支
什麼樣的情況下建立分支?
分支 branch
所謂分支(branch)就是指向某個快照的指標,分支名就是指標名。雜湊值是無法記憶的,分支使得使用者可以為快照起別名。而且,分支會自動更新,如果當前分支有新的快照,指標就會自動指向它。比如,master 分支就是有乙個叫做 master 指標,它指向的快照就是 master 分支的當前快照。
git 有乙個特殊指標head, 總是指向當前分支的最近一次快照。另外,git 還提供簡寫方式,head^指向 head的前乙個快照(父節點),head~6則是head之前的第6個快照。
每乙個分支指標都是乙個文字檔案,儲存在.git/refs/heads/目錄,該檔案的內容就是它所指向的快照的二進位制物件名(雜湊值)。
git pull 或 git push 時,當出現了驗證時,填錯了使用者名稱或密碼,該遠端將拒絕你的訪問,使用 git config --system --unset credential.helper,重置錯誤步驟,可重新來過。
git branch --set-upstream-to=origin/feat-les feat-les,把本地 feat-les 分支與遠端 feat-les 關聯
阮一峰 git 原理入門
阮一峰常用 git 命令
git與github建立倉庫連線步驟
DTU原理及基礎知識
現場採集點 現場採集點的使用者串列埠裝置 可以是各種儀表 plc 微控制器 pc等 通過rs232或rs485 rs422介面與gprs dtu終端相連,使用者串列埠裝置傳送的資料通過gprs dtu終端的內部嵌入式處理器對資料進行網路協議封裝後通過gprs無線網路傳送到資料中心。監控中心 a 公網...
DTU原理及基礎知識
現場採集點 現場採集點的使用者串列埠裝置 可以是各種儀表 plc 微控制器 pc等 通過rs232或rs485 rs422介面與gprs dtu終端相連,使用者串列埠裝置傳送的資料通過gprs dtu終端的內部嵌入式處理器對資料進行網路協議封裝後通過gprs無線網路傳送到資料中心。監控中心 a 公網...
Git 基礎知識
2019 february 16 git簡寫 狀態說明 備註?untracked 未跟蹤此檔案在資料夾中,但並沒有加入到git庫,不參與版本控制,通過git add 狀態變為staged mmunmodified 已入庫未修改 如果它被修改,而變為modified,如果使用git rm移出版本庫,則...