日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git仓库

發布時間:2024/4/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git仓库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

安裝

下載安裝https://git-scm.com/

安裝時傻瓜式安裝,不用修改選項

安裝成功后,右擊,會出現:

Git Gui ,圖形化界面,一般不用

Git Bash,一個linux終端

GIt Bash常用命令

?clear清空終端內容

常用命令

初始化

git init

在項目目錄右擊git bash,初始化git,會在當前項目增加一個.git隱藏目錄,那些版本備份都會在該文件夾下

配置用戶信息

該操作一個人只要配置一次

自報家門,在git中設置當前使用的用戶是誰

git config --global user.name "xiaoyue"

git config --global user.email "xiaoyue@qq.com" //不一定是真實的,但一定是符合郵箱格式的

添加到暫存區

git add ./readme.md ./代表當前文件夾 ,沒有報錯代表成功

git add . //提交全部,除了忽略文件之外

提交到本地倉庫

git commit -m "我初始化好項目了"

-m : --message 提交信息,方便以后查看時,知道本次提交做了些什么

查看狀態

git status

若工作區是干凈的,表示沒有修改。沒有要提交到暫存區的文件,也沒有要提交到本地倉庫的文件

紅色代表有修改代碼,但是還沒有提交到暫存區

綠色表示有修改,沒有提交到本地倉庫

一次性提交所有

git commit --all -m "一些說明"

提交到遠程倉庫

git push 【遠程地址】 【分支名】 提交到遠程倉庫master分支

?如果是第一次提交,會需要填寫用戶名和郵箱什么的

?把當前分支的內容上傳到遠程的master分支

git remote add 【給該遠程地址起的名字origin】 【遠程地址】 設置一個遠程的路徑

查看所有添加的遠程地址git remote -v

?設置完之后,再次提交時可以這樣寫git push origin master

git push --set-upstream 【遠程地址的名字】 master 如果不想每次都填寫遠程地址,就可以設置一次默認的遠程地址和默認的分支,--set-upstream可以縮寫為-u

?設置完之后,在提交時就可以這樣寫 git push

拉取遠程倉庫的內容

方式一:pull

git pull 【遠程地址】 【分支名】

會把遠程分支的數據得到,注意一定先要git init初始化一下

如果本地也有內容,拉取時就會合并,如果有沖突,自己手動處理沖突

如果想直接git pull,那你需要在push時用一次-u

?git remote add 【給該遠程地址起的名字origin】 【遠程地址】

?git push --set-upstream 【遠程地址的名字】 master

方式二:clone

git clone [遠程地址]

注意一定先要git init初始化一下

把項目整個克隆下來,多克隆幾次會覆蓋本地,所以小心使用

查看提交日志/記錄

git log //多行顯示日志

git log --oneline //查看簡潔版日志

git reflog//可以看到所有提交和切換的記錄

回溯到之前的版本

方式一

先查看提交日志有幾條記錄,記錄是上面最新下面最舊,從上往下一次為0迭代

git --hard Head~0 回溯到上一次的版本

git --hard Head~1 回溯到上上一次的版本

git --hard Head~2 回溯到上上上一次的版本

回溯完后,你的日志記錄就只有回溯之前的了

方式二

git --hard '日志id' //回溯到準確的某個地方

,雖然log只顯示之前的記錄,但是你還是能通過日志id直接通過此方式進行回溯

分支

git branch dev,創建一個叫dev的分支

git branch查看分支,前面帶有*號的表示當前所處分支

git checkout dev,切換到dev分支

git merge dev,合并dev分支到當前分支(有*的那個分支)

情景:假如我在做一個輪播圖的功能,花時比較長,只能提交到分支了為了不影響其他人

此時添加分支banner,

切換到banner分支,

?提交代碼到分支,

等到更能完成,提交代碼到分支

切換到主分支,查看log,你會發現log里并沒有分支提交記錄,

此時你需要合并banner到主分支,在查看log,就有分支的提交記錄了

git branch -d dev 刪除某個分支 ,注意:只有不在dev分支的時候才能刪除dev分支

ssh方式上傳代碼

不需要用戶名和密碼

公鑰 私鑰

獲取公鑰

生成你的公鑰ssh https://gitee.com/help/articles/4181#article-header0。按照說明文檔在git bash上操作獲取公鑰.

如果已經有公鑰了直接獲取就行(查看自己電腦有沒有配置過公鑰,用戶>xiaoyue>.ssh>id_rsa.pab 打開此文件,里邊就是你的公鑰)

  • 運行命令ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
  • 按照提示完成三次回車,即可生成 ssh key
  • 通過查看 cat ~/.ssh/id_rsa.pub 文件內容,獲取到你的 public key
  • 復制你的公鑰,在線上 碼云 添加公鑰。 完成此操作,你的電腦就和你線上的碼云倉庫就打通了

常見報錯情況

常見錯誤一

error: bad signature //錯誤的簽名 fatal: index file corrupt //索引文件損壞

解決方法1:

rm -f .git/index //rm為linux語句,刪除文件用的 rm -f表示直接刪除

git reset//重置

接單粗暴的解決:

直接刪除.git文件,重新init

常見錯誤二

merge合并dev分支時,出現沖突conflicts!需要手動進行修改選擇,刪除不要的,留下正確的

HEAD>>>> ...當前分支的代碼內容 _____________________________ ...dev分支的代碼內容 <<<<<dev?

然后再查看狀態,該提交的提交

git stash 恢復到上一次提交狀態https://www.cnblogs.com/tocy/p/git-stash-reference.html

常見問題三

情景:

A用戶修改了index代碼上傳到github,B用戶在沒有更新的情況下修改了本地代碼,并準備上傳。如果上傳會報錯。

  • 這個時候,應該先拉取遠程的代碼到本地,再上傳,提示有沖突就在本地解決沖突。
  • 如果先上傳再拉取就是在遠程會出現沖突,遠程有沖突不易解決。
  • 所以,養成良好的習慣,先拉取再上傳

注意:

如果拉取的時候,bash終端會出現 編輯信息的頁面,

此時,按下Esc,再按下:(冒號),再按下w(保存)q(退出),再回車,終端下面會顯示:wq

轉載于:https://www.cnblogs.com/xiaoyue-/p/10608122.html

總結

以上是生活随笔為你收集整理的git仓库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。