寫在最前面
其實現(xiàn)實工作中,命令大全啥的沒什么用,下面是git日常使用的七大命令:
1.$cd? xxx
2.$git add .
3.$git commit -m "xxx"
4.$git push
5.$git bransh
6.$git checkout? master
7.$git pull
前言
說到版本管理器,全世界千千萬萬的碼哥哥碼妹妹們腦海中出現(xiàn)最多的顯然是SVN和GIT,這兩個工具造福了世界上大部分的開發(fā)者,為了讓開發(fā)者們能簡單使用,如今也有不少操作方便的可視化工具,如SVN的Verson和Cornerstone,GIT的Sourcetree等等,但是....還有什么比命令行來的更簡單粗暴呢?
SVN命令大全
1.SVN操作三部曲
1> checkout??? 從服務(wù)器下載到本地
2> update?????? 更新服務(wù)器的修改到本地
3> commit???? 上傳本地修改到服務(wù)器
2.常用命令
切換到工作目錄???
$ cd xxx
checkout到本地(會保存用戶名密碼) ???????
$ svn co http://xxx/svn/xxxx --username=manager --password=manager
查看本地代碼庫的狀態(tài)(" "沒有改動"A"被添加"C"沖突"D"被刪除"I"被忽略"M"修改"R"被替換"X"外部目錄"?"沒有被add"!"被強制刪除)
$ svn st
查看日志/文件的日志/某版本文件的日志
$ svn log
$ svn log filename
$ svn log filename@1
新建一個文件
$ touch new.c
編輯打開文件
$ open new.c
添加文件
$ svn add main.c/main.*
刪除文件
$ svn rm Person.h
提交刪除
$ svn ci -m? " 刪除了一個.h "? ? ? ? ? ? ? ?
撤銷修改
$ svn revert Person.m
回溯到版本5.0
$ svn update -r 5.0
對比沖突
(p) postpone
使用我的
(mc) mine-conflict
使用他的
(tc) theirs-conflict? ? ?
GIT命令大全
幫助( "q" 退出幫助 , " 空格 "下一頁 ",CTRL+B" 上一頁)
$ git help
初始化
$ git init
配置用戶(global保存在文件中)
$ git config user.name manager
$ git config user.email manager@gmail.com
$ git config --global user.name manager
$ git config --global user.email manager@gmail.com
查看配置
$ git config -l
新建打開
$ touch main.c
$ open main.c
查看狀態(tài)
$ git status
添加
$ git add main.c
上傳
$ git commit -m "提交了main.c"
添加所有
$ git add .
添加多個
$ touch Person.h Person.m
查看日志
$ git log
回到當前版本
$ git reset --hard HEAD
回到前1個版本
$ git reset --hard HEAD^
回到前3個版本
$ git reset --hard HEAD~3? ?
回到 e695b67版本? ? ?
$ git reset --hard e695b67
查看分支引用記錄
$ git reflog
其他的命令持續(xù)加入.
代碼管理工具的作用
1.追蹤一個項目誕生過程
2.記錄項目所有變化
3.查閱版本修改情況
兩者的區(qū)別
svn是集中式代碼管理,合并操作把來源多個提交合并成了一個合并提交,即在提交歷史中Crash了自然的提交過程。一旦提交就到服務(wù)器上,實際使用中就是不能修改。在模型上是沒有分支和tag的,tag是通過目錄權(quán)限限制(對開發(fā)只讀)來保證不變。需要從服務(wù)拉取日志。
git是分布式代碼管理.