作為一名產(chǎn)品運營人員,Svn 可以不學(xué)但 Git 可不能錯過,這是我一位做運營的朋友說的。其實一開始這兩個我都不知道是什么,經(jīng)過谷歌Wiki,才知道 Git 和 Svn 都屬于版本管理器,不同的是 Git 除本地儲存外,有網(wǎng)狀態(tài)下還可以直接Push到云端倉庫,不僅代碼,文字也可以如此進(jìn)行管理,魅族的內(nèi)容策劃團(tuán)隊就曾這么干過 ,他們上傳了一份寫作手冊。

用了幾天的時間學(xué)習(xí)了 Git 的基本操作方法,在此推薦下廖雪峰老師寫的《Git教程》,受益良多。
- 創(chuàng)建一個Git項目并推送至Github流程:
mkdir ProjectName //創(chuàng)建一個本地Git項目
pwd //顯示當(dāng)前目錄
git init ProjectName //把當(dāng)前目錄初始化為Git倉庫
git add ProjectName //將該項目添加至緩沖區(qū)
git commit -m "update something" //將項目提交
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^ //回退到上一個版本
git reset --hard xxx //指定回退到哪個版本號xxx
git checkout -- xxx //文件回到最近一次git commit或git add時的狀態(tài)
rm xxx //刪除文件
git rm xxx //確定刪除文件
git checkout -- xxx //刪錯了重新恢復(fù)
git stash //保存工作現(xiàn)場
git stash list //查看現(xiàn)場清單
git stash pop //恢復(fù)現(xiàn)場的同時把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 //打印由時間最近到最遠(yuǎn)提交日志的縮略信息
git reflog //記錄之前的命令
使用git log相當(dāng)于終端進(jìn)入vi,退出時按”q“即可(媽媽說常用linux命令還是得記住)
:q //正常退出
:q! //強(qiáng)制退出用
:wq //推出并保存
:wq! //強(qiáng)制推出并保存
- 關(guān)于Branch
git checkout -b ooo //創(chuàng)建一個分支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時出現(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.合并分支時發(fā)生沖突
error: you need to resolve your current index first
解決辦法:
git reset --merge //回到merge前