git和svn不同,git可以不用服务器,在本地就可以进行版本的控制,当然也可以用服务器
git的所有版本信息都存.git目录中
使用git当然要先安装git,下面的说明我们都假安装了git
第一次使用要配置git
配置使用git仓库的人员姓名
Java代码 收藏代码
git config --global user.name "Your Name Comes Here"
配置使用git仓库的人员email
Java代码 收藏代码
git config --global user.email you@yourdomain.example.com
在git命令中开启颜色显示
Java代码 收藏代码
git config --global color.ui true
这个命令是指定合并的工具
Java代码 收藏代码
git config --global merge.tool mate
这些配置的信息可以在用户目录看到
mate ~/.gitconfig 上面就是我们配置的信息
####################################
.gitignore
这个命令可以过滤一些我们不想版本控制的文件
eg:
过滤文件夹设置:
/mtk/ 表示过滤这个文件夹
过滤文件设置
指定过滤某种类型的文件:
*.zip
*.rar
*.via
*.tmp
*.err
指定过滤某个文件:
/mtk/do.c
/mtk/if.h
####################################
git help可以获得git的基本命令
下面先说一基本的命令,然后再说几个使用的情景
git init这个是git的初始化命令,就是生成.git目录,生成版本控制仓库
以后所有的版本信息变化都存在这个版本库中
git add 将当前工作目录中的更改或都新增的文件加入到版本库中,这是提交前要做的一步
git add . 把所有的更改都加加入到版本库中,待提交
git commit -m “comment” 提交更改
git status 这里是查看文件的变化,查看是否提交到版本库,在一些操作前最好先用这个命 令查看一下
git rm 从当前的工作目录和版本库中删除文件
git rm -rf 某一个文件 强行删除某一个文件
git log 果看操作日志
git log -10 显示10个日志
git log --stat -summary 显示每次版本的详细变化
git show 版本号 就可以查看某一个版本的详细变化
git merge 合并命令,假设把new_branch分支合并到主分支,git merge new_branch
git branch new_branch 生成新分支new_branch
git branch 列出本地分支,正使用的分支前面会有星号
git branch -a 列出所有分支
git diff 比较版本的区别 和某一个具体的版本比较可以用 git diff 版本号
比较任意分支 git diff 版本号1 版本号2
git checkout new_branch 切换到新分支new_branch,这个命令用来切换分支,如果本地有改变,切换的过 程不会删除修改,换到新的分支后再用
git clone 从别的地方把版本库信息考到本地方,例:git clone aaa@192.168.0.7:~/work/直到含有.git的目 录
git pull 把服务器上的的代码拉到本地并合并,例:git pull aaaa@192.68.0.7:~/work/直到含有.git的目录
git push 把代码传到服务器上使用和git pull一样
git remote show origin 通过git remote show origin来得到remote中的所有branch列表
上面是一些使用的基本命令的介绍,下面说一下git的使用情景
一个人的开发:
一个人开发的时候没有什么合作,可以创建任意分支,并把分支的代码合并到主支
这个时候可以不用什么服务器./git里就保存了所有的信息
首先创建一个文件夹,然后进入文件夹,
执行git init就完成了初始化,并默认在master主支,其实这里也是分支,git上没有主支分支的区分都是分支,只不过我们认为这个为主支
然后在这里创建我们的文件,假为a.txt,这个时候我想做些其它的东西,想在分支上做,于是我可以生成一个分支
git branch new_branch,生成之后我们还在master上,要转到分支上执行
git checkout new_branch 之后就可以在分支上进行相关的操作,比如新建了文件b.txt,并且修改了文件a.txt
这个时候分支上的开发到了一个段落想把分支的东西合并开主支上也就是master上,这个时候,先切换回master
git checkout master
这样就到了主支下面去了,要是想查看现在属于哪个分支,可以用git branch,就会显示所有分支,并且正在使用的分支前面会有一个星号
开始合并,git merge new_branch 这就是把分支的东西合并到主支,这里有两种情况,如果主支没有改动,就会直接自动合并,如果主支也有改动,可能会产生冲突,需要解决完冲突才能提交
上面的是一个人的开发情景
二个人的开发:
再介绍一些两个人的开发情景
首先一个人建了一个git库比如我们刚才一个人建的那个库,这个时候,想让另一个朋友过来一起开发,那么另一个朋友可以这样执行 git clone firstperson@192.168.0.5:~/work/直的到含有.git的目录
这样在朋友的机器上就有一个一模一样的版本,朋友可以在这个版本上进行开发,这时的开发就同一个人的开发时的情景一样,最后开发到一阶段,需要合并到我们的工程上
可以执行这样的命令 git pull 朋友的名字@192.168.0.6:~/work/直的到含有.git的目录
这样就把朋友的开发拉到本地方进行合并
下面介绍一下多人协作开发:
这时如果还是按照上面的情况有一个人来完成合并,那么可能需要做更多的工作,这个时候就需要建一个服务器,让每一个人都从服务器上拉,每一个跟服务器合并
假设有A,B,C三个和一个server,server上有一上版本库叫做r1
开发开始,首先都各自从服务器上拉下最新的代码
git clone 服务上的git库,其后每一个的开发就是合并上传自忆的代码
这个模式类似于svn,不一样的是每一个人在本地有一个自已的库,并可创建分支,可以建一个分支,在分支上进行开发,然后合并到自己的主支,再合并到服务器上,这样可以避免一些误操作,也可以有效的将本地的主分支保持干净
下面是参考的一些博客:
这三个是说明如何配置gitconfig的,包括配置比较工具等
http://hlee.iteye.com/blog/725184
http://blog.163.com/xc_win/blog/static/182291218201111281118615/
http://blog.csdn.net/shuhuai007/article/details/7276195
常用命令的说明:
http://lib.open-open.com/view/open1335879873983.html
使用情景介绍
http://blog.haohtml.com/archives/10129
分享到:
相关推荐
Git使用教程
日活千万级公司git使用规格。 目的 1 开发人员 git 使用流程(规范) 2 提交规范 2 分支建立规范 4 新功能开发分支建立规范 4 发布规范 4
git使用的详细操作步骤 git使用的详细操作步骤git使用的详细操作步骤git使用的详细操作步骤git使用的详细操作步骤git使用的详细操作步骤git使用的详细操作步骤git使用的详细操作步骤
git使用培训手册
Git使用手册中文版,详细介绍了Git的相关信息
Git使用介绍及高级技巧 Git Magic.pdf
简单直接的GIT使用入门教程,篇幅短小,没那么多废话。
比较详细的git 使用手册 ...............
git使用视频教程,带你一步步学会git的使用,安装、提交代码、解决冲突等等!
git使用说明超级详细的总结分类,使用mindManager完成资源分类
Git使用规范及部分代码规范.pdf
GIT使用教程[收集].pdf
git的基本操作使用,希望对大家有用,这是部门同事分享的
版本管理工具Git的入门教程,较为详细,适合初学者阅读
MindMaster的emmx源格式,Git使用命令汇总, 简单明了的思维导图 内容: 初始化 SSH连接(Window) 本地操作 分支操作 远程操作
Git使用文档
git使用详细介绍
git 使用手册git 使用手册git 使用手册git 使用手册git 使用手册git 使用手册
此资源是Git官网的官方学习手册、指南,且是中文版,非常详细和明确,借此手册可以对Git从入门到深入进行系统的学习,墙裂推荐!Git的代码托管功能远强于svn,可以说是开发必备技能之一。官网下载很慢,所以此处提供...
Git开发操作流程v1.0 Git使用笔记 目录: Git开发操作流程 2 1. 新建分支 2 # 1-查看当前git状态 2 # 2-若不在主分支master,则切换至主分支 2 # 3-更新主干代码,确保本地仓库与远程同步 2 # 5-推送至远程仓库 2 2. ...