下面是命令操做的詳細步驟,每一步都是相鏈接的;對於git的相關命令,包括了團隊開發時候如何操做,以及QA如何測試的;都挺詳細的,可能有註釋的理解不太正確,能夠進行補充;html
也能夠看着以前發佈的一篇git命令清單,裏邊的圖是相當重要的;圖理解了,纔會思考下一步如何進行;node
1. 簡單操做:linux
(1)ls顯示目錄全部的內容
(2)ls -a 顯示隱藏文件./..
(3)ls -al d開頭文件夾 列表顯示出文件詳細信息
(4)mkdir 文件名 建立文件夾
touch index.html 建立文件
(5)vim index.html 編輯文件 i 輸入文件內容 ESC退出文件 :+wq存盤退出
(6)cat index.html 查看文件內容
(7)cp index.html index2.html 拷貝文件
(8)mv index2.html index.html 具備移動和修改
(9)rm -rf 強制刪除
(10) cd ~ 根目錄 pwd 我的工做目錄
(10)cd ./ 當前文件
2. npm 簡單命令
exports=modules.exports,可是this指向不一樣;
(1)npm init -y 一步生成package.json包 name最好本身命名 version 版本號
script 能夠建立命令
license:mis開源 ISC本身的
(2)npm info jquery 查看jquery的版本
npm i jquery@2.1 --save --save保存在package.json中;默認是最新版本(通常指定某版本)
次版本號:功能更新
(3)npm i
(4)npm i underscore -S jquery的庫輔助 在dependencies中
(5)npm i babel-core@6.4 --save-dev(-D)
(6)npm ls 安裝的全部的包,能夠查看依賴
(7)npm ls | grep jquery 查看安裝的包
dependencies 線上須要的包
devDependecise 線上已是轉過es5的,不用再用這個包
(8)npm outdated 查看過時的包
'jquery':'^2.1.1' ^保留第一個版本號,後面取最新
驗證: npm info jquery
'jquery':'~2.1.1'鎖定前兩位...
'jquery':'2.1.1'鎖定前三位
'jquery':'*'配置最新的
wanted 就是安裝的以^,*要求的
(9) npm update 根據wanted進行升級
3. git 簡單操做
git遠端控制 gitlab 開源
(1) new repo 建立倉庫 對應一個項目
inilialize this repository width a readme 選擇
gitignore 不須要建立 node
license 建立 MIT
(2) git clone github地址 文件名
clone width SSH 安全代碼管理協議 配置公鑰和私鑰
clone width HTTPS http+ssl 必須輸入用戶名和密碼
git根據公鑰產生私鑰
(3)ssh-keygen -t rsa -C 郵箱地址
一路回車 [RSA 2048]成功
.ssh隱藏文件
根據clone找到c盤的.ssh文件
在github中找到setting ->SSH and GOG keys 粘貼公鑰
(4) git config --global user.name 出現用戶名
git config --global user.name aaa 更名爲aaa 找不到的時候
(5) git config --global user.email
也能夠在最後在clone 地址
有文件夾生成 .git .gitignore .package.json來配置的插件
(6)git status 查看狀態
git config --global alias.st status 配置status的別名
git st 簡寫
紅色:沒有被跟蹤
(7) git add . 把文件放到索引倉庫 已經執行過的文件就不用在執行
(8)git commit -m '這是個人第一個提交' 提交到本地倉庫
git ci 是commit的別名
git commit -am '這是個人第二個提交'
(9) git push 提交到遠程倉庫
master->master表示提交成功 刷新遠端倉庫有顯示文件
(10)git rm 文件名 刪除文件
git st git ci -am 'detele a file' git push 再次遠程提交
團隊協做:
(1)git clone github地址 pbh ;生成項目文件夾 多人相同方式
(2)進入pbh git branch 查看分支(不能在master上修改)
(3)git br maizuo-20171225-gengxin-bugfix 沒有master的操做權限(建立新分支)改名爲pbh-bug
(4) git br 查看當前分支
分支開發,主幹發佈
或者:git checkout -b pbh-bug 建立並顯示在該分支上
(5) git checkout maizuo-20171225-gengxin-bugfix 切換分支
工做目錄對應當前分支;本地工做目錄只能跟蹤當前分支
(6)git ci -am '' 進入當前文件pbh
在這裏進行切換分支操做: index.html內容發生變化;
(7)git push 放到遠程倉庫fatal致命錯誤:查看遠端有沒有該分支
git push --set-upstream origin pbh-bug(分支)
沒有提交到master;能夠查看到分支github;
也能夠修改.git文件:[branch 'ghb-bug']
remote=origin
merge = refs/heads/ghb-bug
修改內容發佈:此時的master已是修改的
時刻查看分支內容是不是最新;
(5) git pull 將master上的東西放到工做區 此時的代碼仍是老代碼
git push (everything up-to-date)本地和遠端同樣
(6) git merge master 將分支和最新線上的東西合併 :q 在ghb-bug分支上執行
(7) git br 查看此時所在的分支 git push(遠端沒有該分之)
(9) git push --set-upstream origin ghb-bug github查看到分支
QA測試:
從新建立文件
(1) git clone 地址 maizuo-QA
(2) git br 進入該文件後查看當前分支
(3) git br -a 查看分支
綠色:本地;紅色:分支
(3) git checkbox pbh-bug 把該分支拉下來
採用branch發佈
git st 會自動提示push;
此時能夠切換分支查看變化;
(4)git merge pbh-bug 到master分支 將master和pbh-bug進行合併
git st 會自動提示push;
此時能夠切換分支查看變化;git push
已有人測試過的時候,再次測試ghb-bug的時候:在maizuo-QA找不存在某個分支的時候:
(1)git fetch --all 找到全部分支
白色的說明已經合併過的分支;
(2)git branch 找到該分支
(3)git checkout ghb-bug 內容和master不同
git checkout master -> git merge ghb-bug
當有相同的文件的時候,git pull ->每次測試的時候都應該有該步驟
合做:在github項目上 setting->collaborators 邀請合做人
branches保護分支