一、为什么要了解Git
Git是一套版本管理系统。看到“Git版本管理”,一大部分盆友已经转身想走,在你握着门把手准备开门走人时,请最后听我说完最后一句:人人都需要版本管理,git可以帮你少交停电/蓝屏/死机税,提高产出效率,不来一发吗?
试过半夜写汇报ppt吗?'汇报ppt'→'汇报ppt1'→'汇报ppt11'→'汇报ppt2015-03-17'→'汇报ppt2015-03-17新'→'汇报ppt2015-03-17新1'……无休止的命名斗争,这就是自然而然的版本管理,只不过,没有好的工具,所以显得一团mess。
无论学生党还是设计师 是最后一次提交的成果。在树干上,你可以开无数的分支(就是branch啦)胡弄,弄乱了也不怕,大不了剪掉再开一个,树干不受任何影响。折腾ok的分支,最后可以merge到默认branch也就是master上。
用技术性语言描述,分支用来将特性开发绝缘开来。在创建仓库的时候,master 是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。
那origin又是什么?origin是远程默认的仓库。clone完成之后,Git会自动将远程仓库命名为origin。
那Head和master又是什么关系?Head其实只是个指针,指向当前最近commit的branch。而master是本地默认的branch,所以Head经常都是指向master。另外Head是官方定义的,而master和origin都是大家常用的命名,并不一定要叫master和origin。[2]
3.工作流:add & commit & push把包子从桌子挪到蒸笼,叫add————已修改modified————汇报ppt初稿写成;把包子从蒸笼挪到盘子,叫commit————已暂存staged————汇报ppt完稿存到u盘/网盘什么的;把包子从盘子挪到货架,叫push————已提交commited——汇报ppt发送到boss邮箱。
Git的好处之一是,包子包好后,还可以回退……
捷径:
三、配置
1.工作目录 2.本地仓库 3.远程仓库
四、常用命令
最常用:
git command –help1.创建
需要进入目标目录进行操作
创建新仓库:git init创建一个本地仓库的克隆版本:git clone /path/to/repository克隆远端服务器上的仓库: git clone username@host:/path/to/repository
2.查询
git statusstaged:已在index,等待被commit.unstaged:文件做了改动,但还不能被commit.untracked:Git还没有开始跟踪,需要先add.deleted:文件已被删除,等待remove.
Staging Area:commit前把文件们收集到一起,以便打包commit。
3.add/添加
添加到暂存区(让Git开始跟踪更改,也就是从 untracked变为tracked):git add <filename> 或 git add *添加全部文件:git add -A, -A 表示包含删除的文件。git reset: git reset <filename> 从staging area 移除文件。
4.commit/提交
"commit" 可以理解为一次快照,帮助我们把所有改动以timeline的方式组织起来。
提交改动(到head,但还没到远程服务器):git commit -m "代码提交信息" git commit -m 'Add all files'把所有当前目录下的文件加入暂存区域再运行commit:git commit -a提交到远程仓库:git push origin master (可以把 master 换成你想要推送的任何分支)。 如果还没有克隆现有仓库,并想将仓库连接到某个远程服务器:git remote add origin <server>。
5.push/推送
将文件推送到远程仓库中:git push -u origin master。远程仓库默认叫origin 。-u 告诉Git记住参数,下次可以直接使用push。
6.pull/拉取
更新本地仓库至最新改动:git pull origin master
7.checkout/切换
checkout命令用于从历史提交(或者暂存区域)中拷贝文件到工作目录,也可用于切换分支
切换分支: git checkout <branch> 新建并切换到分支:git checkout -b new_branch 等同于:git branch new_branch + git checkout new_branch把文件从暂存区域复制到工作目录,用来丢弃本地修改:git checkout –<files>回滚到复制最后一次提交:git checkout HEAD — <files>
8.diff/比对
git diff
9.reset/撤销
从index中撤销所有文件:git reset 从index中撤销最后一次add的文件:git reset –<flies> 恢复之前版本:git reset –hard回滚到最近一次:git checkout — <target>
10.merge
合并其他分支到当前分支:git merge
11.remove & clean
从硬盘和index移除文件:git rm 删除分支git branch -d <branch name>RefGit简明指南What are the git concepts of HEAD, master, origin?Try Git图解GitPro Git中文版Gitmagic中文版
HackYourself 关注普通人的心智升级,用知识的力量、用微小但持续有效的行动,每天做自我迭代升级。
00 向你推荐:
你为什么不想做,想做也做不到?–优秀学习者的秘诀
如何做个行动达人?——一起认识关于改变的改变
组织和经验的迷思——读⎡经验的疆界⎦
以上就是朝夕生活(www.30zx.com)关于“多用 Git 少交税”的详细内容,希望对大家有所帮助!