首先在使用git之前我们需要了解它的几个概念和基础使用流程,在git操作中有四个重要的地方,你所有的操作都是在和他们打交道。
流程图:
在不同的操作系统上安装方式不同
Debian/Ubuntu
apt-get install git
Fedora
yum install git
window需要下载,http://windows.github.com
mac可以通过homebrew来安装
Git 自带一个 git config
的工具来帮助设置控制 Git 外观和行为的配置变量。你的配置也是要通过该工具完成,当然你也可以通过修改配置文件的方式。
1.配置用户名和邮箱
此处设置的用户名和邮箱可以随意设置,每必要和你的github一模一样,这个只是在提交的时候附加上去,标明这次提交时谁干的,出事了就找这个人。
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
如果使用了 --global
选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global
选项的命令来配置。
2.配置文件编辑器
如果你对文本编辑器有特殊的习惯,可以配置此项,当 Git 需要你输入信息时会调用它。 如果未配置,Git 会使用操作系统默认的文本编辑器。谨慎配置,如果你对这些编译器不熟悉最好还是保持默认
$ git config --global core.editor Vim
3.配置github
你可以配置github账号和token
git config --global github.user s15603333319
git config --global github.token 241236a041eab12345dcba1df1b6d1c546f24f95
4.查看配置
如果你想检查你的配置,可以使用此命令
git config --list
如果你想查看某一项配置,你需要按照git config
git config user.name
5.获取帮助
如果你有什么不懂的可以使用hlep来获取命令的使用方法
$ git help
$ git --help
例如想知道config命令的使用方法
$ git help config
如果你想克隆一份git仓库的代码,你就可以使用git clone [url]
git clone [email protected]:s15603333319/AndroidOpenGL.git
如果你打算使用 Git 来对现有的项目进行管理,你需要使用git init来初始话该项目
git init
使用git add filename来添加文件到暂存区,如果你想添加本目录下所有文件,可以使用git add .
git add .
所有的变更,最终都需要提交,才能在本地持久化报存
git commit -m "提交所附加的信息"
要上传到远程服务器上,你还要指定你的远程仓库地址
git remote add origin https://github.com/s15603333319/AndroidOpenGL.git
最后一步,你就可以把你commit到本地仓库的代码push到远程了,指定分支
git push origin master
检查当前文件状态
git status
忽略文件
我们总会有一些文件不需要纳入git的管理,这种情况下,我们可以创建一个名为 .gitignore
的文件,在其中列出要忽略的文件样式。
$ cat .gitignore
*.[oa]
*~
熟悉正则表达式的看这个很容易明白,不懂的可以去学一下,正则表达式还是很重要的一个东西的。
第一行告诉 Git 忽略所有以 .o
或 .a
结尾的文件。
第二行告诉 Git 忽略所有以波浪符(~)结尾的文件
文件 .gitignore
的格式规范如下:
#
开头的行都会被 Git 忽略。/
)开头防止递归。/
)结尾指定目录。!
)取反。GitHub 有一个十分详细的针对数十种项目及语言的 .gitignore
文件列表,你可以在 https://github.com/github/gitignore 找到它.
查看提交历史
git log
他有许多参数可以配置, 比较常用的一个常用的选项是 -p
,用来显示每次提交的内容差异。 你也可以加上 -2
来仅显示最近两次提交。
撤销提交
有时候我们提交信息写错了,或者漏改了一个地方,我们就需要撤销操作。该命令可以覆盖第一次提交的结果
git commit --amend
创建分支
团队开发必然是要创建分支的,不可能大家都在主线上提交和改动
git branch 分支名称
切换分支
git checkout 分支名称
如果你在此命令上加上参数-b 就表示创建并切换此分支
查看分支
git branch
该命令会列出所有分支,前面带*号的那个是当前分支
合并分支
git merge 分支名称
该命令用户合并指定分支到当前分支上
删除分支
git branch -d 分支名字
合并后的分支就可以删掉了,删除分支要谨慎
这些都是使用率比较高的命令,也很基础,如果你对git有更多的要求,可以查看官方文档学习