Fork me on GitHub

如何使用git创建项目,创建分支

初始化仓库

$ mkdir local && cd local

$ git init 

创建用户名和邮箱

git config -global user.name "Your name"

git config -global user.email "you@example.com"

 

查看用户名和邮箱

git config user.name

git config user.email

建立一个存放工程的文件夹

git init命令用于初始化当前所在目录的这个项目


系统会自动创建一个隐藏文件  .git

创建 main.c 文件

 

创建  .gitignore文件,忽略该文件里面有的项目文件

git status 查看项目状态

git add .. 

给我目前的这个项目制作一个快照snapshot(快照只是登记留名,快照不等于记录在案,git管快照叫做索引index)

 

git commit用于将快照里登记的内容永久写入git仓库中,也就是开发者已经想好了要提交自己的开发成果了。

要说一句:切记写开发日志的时候,第一行一定要是少于50字的开发概括信息,而且第二行务必是空行第三行开始才可以开始细致描述开发信息。这是因为很多版本服务系统中的email机制都会选取log中的第一行为邮件题目。

 

 

git commit -a这个命令可以直接提交所有修改,省去了你git add和git diff和git commit的工序

注意:无法把新增文件或文件夹加入进来,所以,如果你新增了文件或文件夹,那么就要老老实实的先git add .,再git commit

git log -p

如果你觉得git log给出的信息太单薄了,可以使用git log -p,这样git不但会给出开发日志,而且会显示每个开发版本的代码区别所在。

 

总结:先git add你修改过的文件,再git diffgit status查看确认,然后git commit提交,然后输入你的开发日志,最后git log再次确认。

 

创建分支

git branch experiment 创建一个分支

直接输入git branch,不加任何后续参数,就表示让git列出所有已存在的分支。

前面带星号的分支表示当前所在的分支

 

切换分支到experiment

git checkout experiment

 

分支程序OK

 

 

git commit -a

在分支上提交工作


 

切换住干道

git checkout master

git commit -a

 

git merge experiment 

合并分支到主干道

提示合并失败

查看源文件

git迷惑之处在于它不知道是把hello world这行放在前面还是把报时功能这段放在前面。

修改冲突

重新提交

git commit -a

 

gitk 图形化的git管理界面

合并完分支后,对分支进行删除

git branch -d experiment 

-d,表示“在分支已经合并到主干后删除分支”。如果使用大写的-D的话,则表示“不论如何都删除分支”,

 





posted @ 2016-01-28 18:29  LookPHP  阅读(3615)  评论(0编辑  收藏  举报