参考:来自《第一行代码-android》git时间
推荐一本书:《git权威指南》
1.安装git
Ubuntu安装,shell中输入:sudo apt-get install git-core
Windows安装:
访问网址:http://msysgit.github.io/,点击网页中央的Downloads下载最新版本的Git安装
2.创建代码仓库
Linux系统打开shell
Windows系统打开Git Bash(右击,快捷键中可以找到)
配置一下身份,可以知道是谁提交的,命令如下:
git config --global user.name “Tony”
git config --global user.email tony@gmail.com
查看只需将最后的名字和邮箱地址去掉
进入到需要创建代码仓库的目录下
git init //初始化代码仓库,生成.git文件夹,可通过ls –al查看
如要删除本地仓库,只需删除该文件夹
3.提交本地代码
使用add和commit命令。add是把想要提交的代码先添加,而commit是执行提交
添加单个文件: gitadd AndroidManifest.xml
添加整个文件夹: git add src
一次性添加所有文件:git add .
提交: gitcommit –m “First commit.” //一定要通过-m参数加上提交的描述信息
4.忽略文件
Git提供了一种可配性很强的机制来允许用户将指定的文件或目录排除在版本控制之外,它会检查代码仓库的根目录下是否存在一个名为.gitignore的文件,如果存在的话就一行行读取这个文件夹中的内容,并把每一行指定的文件或目录排除在版本控制之外。注意.gitignore中指定的文件或目录是可以使用“*”通配的。
bin/
gen/
排除bin和gen目录后,提交文件
git add .
git commit -m “excepting bin folder and gen folder”
5.查看修改内容
比较理想的情况是每当完成了一小块功能,就执行一次提交。查看修改情况,命令: git status
查看所有文件的更改内容:git diff
如果只查看指定的文件:git diff 指定文件的绝对路径或者相对路径
git diff src/com/example/providertest/MainActivity.java
(其中减号代表删除的部分,加好代表添加的部分)
6.撤销未提交的修改
git checkout 指定文件的绝对路径或者相对路径
执行上述命令后,改文件的修改被撤销。此命令只适用于没有执行过add命令的文件。如果文件add过,需先取消添加,再撤销修改。
git reset HEAD 指定文件的绝对路径或相对路径
7.查看提交记录
git log
可以在命令中指定该记录的id,并加上-1 参数表示我们只想看到一行记录
git log 2e7c0547af28cc1e9f303a4a1126fddbb704281b -1
如果想要查看这条提交记录具体修改了什么内容, 可以在命令中加入-p参数
git log 2e7c0547af28cc1e9f303a4a1126fddbb704281b -1 –p
8.分支的用法
查看分支:gitbranch –a
创建一个分支:gitbranch version1.0
切换分支:gitcheckout version1.0
合并分支:gitcheckout master git merge version1.0
删除分支:gitbranch –D version1.0
9.与远程版本库协作
下载代码到本地:gitclone https://github.com/exmaple/test.git
同步到远程版本库:gitpush origin master
将远程版本库上的代码同步到本地:
git fetch origin master 将远程版本库上的代码同步到本地
git diff origin/master 远程版本库上修改
git merge origin/master 将 origin/master 分支上的修改合并到主分支上
git pull origin master
pull 命令则是相当于将 fetch 和 merge 这两个命令放在一起执行
10.将代码托管到github上
在github上创建版本库;在本地创建项目;工程目录下,git clone https://github.com/tony-green/coolweather.git 来把远程版本库克隆到本地;将目录中的所有文件全部复制到上一层目录中。注:注意.git 是一个隐藏目录,在复制的时候千万不要漏掉。
将所有文件添加到版本控制中:git add .
在本地执行提交操作:gitcommit -m "First commit."
提交代码:git pushorigin master
最后一步的时候GitHub 要求输入用户名和密码来进行身份校验,这里输入我们注册时填入的用户名和密码就可以了。