中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

git中的命令怎么使用-創(chuàng)新互聯(lián)

這篇文章主要講解了“git中的命令怎么使用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“git中的命令怎么使用”吧!

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供蒙山企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、做網(wǎng)站、H5開(kāi)發(fā)、小程序制作等業(yè)務(wù)。10年已為蒙山眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。

git 的安裝

本文使用的是win7平臺(tái)。 Git可以在Linux、Unix、Mac和Windows這幾大平臺(tái)上安裝了,可以根據(jù)自己的操作系統(tǒng)去官網(wǎng)下載。

git中的命令怎么使用

git 常見(jiàn)命令

介紹命令之前先來(lái)張圖吧,所有的命令都是圍繞張圖的

git中的命令怎么使用

  • Workspace: 工作區(qū),就是你平時(shí)存放項(xiàng)目代碼的地方

  • Index / Stage: 暫存區(qū),用于臨時(shí)存放文件的改動(dòng),事實(shí)上它只是一個(gè)文件,保存即將提交到文件列表信息。

  • Repository: 本地倉(cāng)庫(kù)區(qū)(或版本庫(kù)),就是安全存放數(shù)據(jù)的位置,這里面有我們提交到所有版本的數(shù)據(jù)。其中HEAD指向最新放入倉(cāng)庫(kù)的版本。

  • Remote: 遠(yuǎn)程倉(cāng)庫(kù),托管代碼的服務(wù)器。 弄清楚上面四個(gè)概念,我們就開(kāi)始實(shí)操吧。

  • 通過(guò) git init 命令創(chuàng)建Git可以管理的倉(cāng)庫(kù)(本地庫(kù)初始化)

Administrator@XCRBHXD05IEZEVS MINGW64 /d
$ mkdir gitstudy

Administrator@XCRBHXD05IEZEVS MINGW64 /d
$ cd gitstudy/

Administrator@XCRBHXD05IEZEVS MINGW64 /d/gitstudy
$ git init
Initialized empty Git repository in D:/gitstudy/.git/

執(zhí)行完這個(gè)命令我們可以看到文件下面會(huì)多一個(gè).git的文件夾,以后在這個(gè)文件夾下(工作區(qū))的都可以被git管理了。

git中的命令怎么使用

  • git add 命令把文件添加到暫存區(qū)。 下面我們創(chuàng)建(echo >文件名字)一個(gè)demo.txt文件

$ echo > demo.txt

git中的命令怎么使用

此時(shí)的demo.txt文件是帶個(gè)藍(lán)色?的,當(dāng)我們執(zhí)行g(shù)it add - demo.txt后

git中的命令怎么使用

那如果這個(gè)目錄下面有幾百個(gè)文件都要加到暫存區(qū)怎么辦? 此時(shí)可以使用git add . 這個(gè)命令可以把當(dāng)前目錄下所有文件加入暫存區(qū)。

  • git status 查看顯示工作區(qū)和暫存區(qū)的狀態(tài)。

$ git status
  • git commit -m"提交信息描述" 命令把文件添加到本地倉(cāng)庫(kù)。

$ git commit -m"第一次提交"
[master (root-commit) 22f0a2b] 第一次提交
 1 file changed, 1 insertion(+)
 create mode 100644 demo.txt

提交后demo.txt顏色是不是變綠了。

git中的命令怎么使用

  • git commit -am"文件描述" 【am】 就是 【add modify】 兩個(gè)命令的合并。比如我們修改了兩個(gè)文件demo.txt和demo1.txt。這時(shí)候我們可以直接使用git commit -am命令

git commit -am"第三次提交"

如果新增了文件,必須使用分開(kāi)的命令,不能用合并命令。

git add .
git commit -m 'update'
回退
未使用git add(文件必須是commit 過(guò)的)
  • 使用git checkout -- filename(文件名)注意中間有--

$ git checkout -- demo.txt
  • 回退所有的文件修改使用git checkout .

 git checkout .
已使用git add,未使用git commit
  • 使用 git reset HEAD filename(指定文件名)

git reset HEAD demo.txt
  • 回退所有文件修改 git reset HEAD

 git reset HEAD

在使用本命令后,本地的修改并不會(huì)消失,而是回到了上面 未使用git add 緩存代碼,繼續(xù)使用用git checkout -- filename,就可以放棄本地修改。

已使用 git commit 未push
  • git reset --hard HEAD^ 回退到上一次commit的狀態(tài)(這個(gè)命令需謹(jǐn)慎執(zhí)行)。HEAD^(代表上一次)或者通過(guò)git reset --hard <commitid>(是版本號(hào) 可以根據(jù)git log查看,每次commit都會(huì)生成一個(gè))

 git reset --hard HEAD^
  • git reset --mixed HEAD^ (--mixed也可以省略),保留工作區(qū),并且清空暫存區(qū)。就是回到上一次git add 之前。

git reset HEAD^
  • git reset --soft HEAD^重置HEAD到指定的版本,不會(huì)修改暫存區(qū)和暫存區(qū)就是回到上一次git commit 之前,適用于合并commit節(jié)點(diǎn)。

git reset --soft HEAD^
  • git revert <commitid> 會(huì)回退到之前的那次提交,會(huì)產(chǎn)生一個(gè)新的commit,將這次回退作為一次修改記錄提交,這樣的好處是不修改歷史提交記錄。

 git revert e241441d8a85b2d89
已使用 push
  • git push -f 可以在本地執(zhí)行以上操作后,然后強(qiáng)行推送到遠(yuǎn)程倉(cāng)庫(kù)

git push -f
刪除
  • git rm <文件名> 這個(gè)必須是commit 之后的文件

 git rm demo.txt
  • git rm -f <文件名> 這個(gè)執(zhí)行add 未執(zhí)行 commit可以刪除

 git rm -f 4.txt

遠(yuǎn)程倉(cāng)庫(kù)

  • 以上都是在本地倉(cāng)庫(kù)進(jìn)行操作的,提交的代碼別人也是看不到的,如果寫著代碼硬盤壞了咋辦?那是不是所有的代碼都沒(méi)了。所以寫完了代碼趕緊推送到服務(wù)器上去。

添加遠(yuǎn)程庫(kù)

用命令git remote add origin git@
server-name:path/repo-name.git;關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù)

關(guān)聯(lián)之前肯定要在遠(yuǎn)程創(chuàng)建倉(cāng)庫(kù)

  • 首先要到https://github.com/全球大同性jiao友網(wǎng)站上注冊(cè)一個(gè)賬號(hào)。已有賬號(hào)的就忽略了。

  • 接下來(lái)就是新建一個(gè)遠(yuǎn)程倉(cāng)庫(kù)了。

 git remote add origin git@github.com:workit1/studygit.git

關(guān)聯(lián)后,使用命令git push -u origin master第一次推送master分支的所有內(nèi)容。

git push -u origin master

以后,每次本地提交后可以使用命令git push origin master推送最新修改到遠(yuǎn)程倉(cāng)庫(kù)。

從遠(yuǎn)程庫(kù)克隆
  • 前面我們了解先有本地倉(cāng)庫(kù),再有遠(yuǎn)程庫(kù)的時(shí)候,如何關(guān)聯(lián)遠(yuǎn)程庫(kù)。但是一般實(shí)際開(kāi)發(fā)中我們是先有遠(yuǎn)程倉(cāng)庫(kù)的,然后從遠(yuǎn)程庫(kù)克隆。

 git clone https://github.com/workit1/gitstudy.git

分支管理

  • git checkout -b <創(chuàng)建分支名> 表示創(chuàng)建并切換分支

Administrator@XCRBHXD05IEZEVS MINGW64 /d/gitstudy (master)
$ git checkout -b feature_a
Switched to a new branch 'feature_a'

基于master分支創(chuàng)建了feature_a分支并且切換到了feature_a分支。

  • git checkout <name> 或者 git switch <name> 切換分支

 git checkout master
  • git branch -a 查看所有分支,包含遠(yuǎn)程分支

  • git branch 查看本地所有分支

  • 合并分支

git merge master

當(dāng)有沖突的時(shí)候這里會(huì)個(gè)正在合并的狀態(tài)

git中的命令怎么使用

  • 取消合并,此時(shí)你如果不想合并了,可以使用git merge --abort取消。

git merge --abort
  • 刪除分支

  1. 刪除本地分支git branch -d <name>

 git branch -d feature_a
  1. 刪除遠(yuǎn)程分支git branch -D <name>

實(shí)際項(xiàng)目中如果我們需要開(kāi)發(fā)一個(gè)功能完整的流程是什么樣的呢? 多數(shù)公司模式應(yīng)該下面這樣的流程吧。 1.先基于主干分支 拉出一個(gè)功能分支(feature_xx)進(jìn)行開(kāi)發(fā)。 2.開(kāi)發(fā)完成后測(cè)試基于這個(gè)功能分支進(jìn)行測(cè)試。 3.測(cè)試完成后,開(kāi)發(fā)把功能分支合并到主干分支。 合并代碼操作如下:

  1. 先切換到主干分支(release),主干分支git pull 拉下遠(yuǎn)程分支最新代碼(可能有同事提交了新的代碼)

  2. 切回到功能分支 把本地主干最新代碼合(git merge)并到當(dāng)前功能分支,如果合并有沖突就解決沖突后重新提交。

  3. 切換到主干分支執(zhí)行g(shù)it merge 功能分支。(這一步實(shí)際工作中一般人是不能這么操作的),代碼必須要先發(fā)起一個(gè)merge request 經(jīng)過(guò)代碼review才能進(jìn)行合并到主干分支的。

  4. 合并完主干分支后,功能分支就可以刪除了。

感謝各位的閱讀,以上就是“git中的命令怎么使用”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)git中的命令怎么使用這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

新聞名稱:git中的命令怎么使用-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://m.rwnh.cn/article6/ccioig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、網(wǎng)站設(shè)計(jì)、網(wǎng)站策劃網(wǎng)頁(yè)設(shè)計(jì)公司、品牌網(wǎng)站設(shè)計(jì)網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
阿合奇县| 讷河市| 白玉县| 内黄县| 色达县| 体育| 皋兰县| 贡觉县| 惠水县| 普定县| 肃宁县| 宣恩县| 台安县| 宾阳县| 杭锦旗| 马龙县| 陈巴尔虎旗| 大新县| 沁源县| 萍乡市| 广丰县| 广丰县| 大新县| 云南省| 建平县| 庆元县| 福泉市| 卫辉市| 清涧县| 区。| 冕宁县| 贵州省| 沽源县| 奉化市| 武强县| 柘城县| 海阳市| 余庆县| 和硕县| 孟村| 嵊州市|