作為一名產(chǎn)品運(yùn)營人員姻报,Svn 可以不學(xué)但 Git 可不能錯(cuò)過己英,這是我一位做運(yùn)營的朋友說的。其實(shí)一開始這兩個(gè)我都不知道是什么吴旋,經(jīng)過谷歌Wiki损肛,才知道 Git 和 Svn 都屬于版本管理器,不同的是 Git 除本地儲(chǔ)存外荣瑟,有網(wǎng)狀態(tài)下還可以直接Push到云端倉庫治拿,不僅代碼,文字也可以如此進(jìn)行管理笆焰,魅族的內(nèi)容策劃團(tuán)隊(duì)就曾這么干過 劫谅,他們上傳了一份寫作手冊(cè)。
用了幾天的時(shí)間學(xué)習(xí)了 Git 的基本操作方法,在此推薦下廖雪峰老師寫的《Git教程》捏检,受益良多荞驴。
- 創(chuàng)建一個(gè)Git項(xiàng)目并推送至Github流程:
mkdir ProjectName //創(chuàng)建一個(gè)本地Git項(xiàng)目
pwd //顯示當(dāng)前目錄
git init ProjectName //把當(dāng)前目錄初始化為Git倉庫
git add ProjectName //將該項(xiàng)目添加至緩沖區(qū)
git commit -m "update something" //將項(xiàng)目提交
git remote add orgin git@github.com:username/repositoryname //與遠(yuǎn)程倉庫建立聯(lián)系
git push -u origin master //將本地庫的內(nèi)容推至Github
- 常用命令調(diào)試:
git status //查看當(dāng)前倉庫狀態(tài)
git diff xxx //查看之前修改了什么
git diff HEAD -- xxx //查看工作區(qū)和版本庫里面最新版本的區(qū)別
git reset --hard HEAD^ //回退到上一個(gè)版本
git reset --hard xxx //指定回退到哪個(gè)版本號(hào)xxx
git checkout -- xxx //文件回到最近一次git commit或git add時(shí)的狀態(tài)
rm xxx //刪除文件
git rm xxx //確定刪除文件
git checkout -- xxx //刪錯(cuò)了重新恢復(fù)
git stash //保存工作現(xiàn)場(chǎng)
git stash list //查看現(xiàn)場(chǎng)清單
git stash pop //恢復(fù)現(xiàn)場(chǎng)的同時(shí)把stash內(nèi)容也刪了
- 自定義Git:
git config --global color.ui true //讓Git顯示顏色
git config --global alias.lg log //使用alias將git log自定義為git lg
git config --list //查看git配置清單
- 關(guān)于git log:
git log //查看歷史記錄
git --pretty=oneline //打印由時(shí)間最近到最遠(yuǎn)提交日志的縮略信息
git reflog //記錄之前的命令
使用git log相當(dāng)于終端進(jìn)入vi,退出時(shí)按”q“即可(媽媽說常用linux命令還是得記住)
:q //正常退出
:q! //強(qiáng)制退出用
:wq //推出并保存
:wq! //強(qiáng)制推出并保存
- 關(guān)于Branch
git checkout -b ooo //創(chuàng)建一個(gè)分支ooo
git ckeckout xxx //轉(zhuǎn)到xxx分支
git merge ooo //合并ooo分支
git branch //查看有那些分支
git branch -d ooo //將分支刪除
git log--graph --pretty = oneline--abbrev-commit //查看分支合并狀態(tài)
git merge --no-ff ooo //不使用Git默認(rèn)合并的Fast forward模式贯城, 便于可以查詢是否為合并后的結(jié)果
- 使用Git時(shí)出現(xiàn)的一些error:
1.不能提交至遠(yuǎn)程倉庫
fatal: 'orgin' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
解決方法:
git remote rm origin //先移除orgin
git remote add origin git@github.com:username/xxx //重新與遠(yuǎn)程建立連接
2.合并分支時(shí)發(fā)生沖突
error: you need to resolve your current index first
解決辦法:
git reset --merge //回到merge前