Git的使用及托管代码到GitHub
Posted 陈炳序的Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git的使用及托管代码到GitHub相关的知识,希望对你有一定的参考价值。
首先Git是一个开源的分布式版本控制工具,用git创建代码仓库。
仓库(Repository)是用于保存版本管理所需信息的地方,本地代码 提交到 代码仓库中,如果需要还可以 再推送到 远程仓库中。
所有操作在Gitbash中进行
1、配置身份:
git config --global user.name "coco"
git config --global user.email "[email protected]"
查看配置,用同样的命令,不加最后的名字和邮箱地址。
2、给项目创建代码仓库:
进入项目的目录下,输入git init
在项目的根目录下生成一个隐藏的.git文件夹,这个文件夹就是记录本地所有的git操作的,可以通过 ls -al 命令来查看。
想要删除本地仓库,删除这个文件夹就可以。
3、提交本地代码:
提交代码先add添加,在commit提交。
添加build.gradle文件:git add build.gradle
添加app目录: git add app
添加所有文件: git add .
进行提交:git commit -m "First commit"
commit命令后面,一定要通过-m参数来加上提交的描述信息,否则不合法。
4、忽略文件:
as创建项目的时候在根目录和app模块下生成两个.gitignore文件,文件中的内容都不会添加到版本控制当中。
可以对这两个文件进行修改,来忽略我们指定的文件。
比如,忽略app模块下所有测试文件,那么在app/.gitignore中添加:
/src/test
/src/androidTest
这样就可以了。正常提交代码就行。
5、查看修改内容:
查看文件修改情况,在项目根目录下输入命令:
git status
会提醒我们哪个文件发生了更改。
查看更改内容:
git diff
这样可以查看到 所有文件 的更改内容。
查看某个文件的更改内容,在后面加上从根目录下级目录开始的地址:
git diff app/src/main/java/com/.../***.java
6、撤销未提交的修改:
文件尚未add:
撤销某个文件中的修改,使用checkout命令:
git checkout app/src/main/java/com/.../***.java
对该文件所做的一切修改,都被撤销。
文件已经add:
要先取消对文件的add,使用reset命令:
git reset HEAD app/src/main/java/com/.../***.java
取消add之后,再使用checkout命令即可。
7、查看提交记录:
git log 查看历史提交信息。
提交记录包含 提交id、提交人、提交日期、提交描述 4个信息。
查看其中一条记录,在命令中指定记录的id,加上-1,表示只看一行记录:
git log 1sa41sdfwe54sdfsadf231adc -1
查看该记录具体内容:
git log 1sa41sdfwe54sdfsadf231adc -1 -p
8、分支的用法:
查看当前版本库中 有哪些分支:
git branch
创建分支:
git branch version1.0
这样就创建了一个名为version1.0的分支。
我查看分支的时候,发现其中一个分支前有“*”号,说明当前我们的代码还在这个分支上。使用checkout命令切换到version1.0分支上。
git checkout version1.0
分支之间提交修改代码互不影响。version1.0修改的bug,合并到master分支上,使用merge命令:
git checkout master
git merge version1.0
当我们不需要version1.0分支时,可以删掉分支:
git branch -D version1.0
9、与远程版本库协作:
将远程版本库代码下载到本地:
git clone https://github.com/cococbx/LittleHuiHui-sWeather.git
把本地修改的内容同步到远程版本库:
git push origin master
其中origin是远程版本库的Git地址,master是同步到哪个分支上。
把远程版本库上的修改同步到本地:(两种做法)
1.fetch
git fetch origin master
执行这个命令之后,会同步代码到本地,不过并没有合并到任何分支上,而是存放到一个origin/master分支上,通过diff命令查看版本库修改了什么:
git diff origin/master
之后调用merge命令将origin/master分支上的修改合并到主分支是即可。
git merge origin/master
2.pull
git pull origin master
pull命令相当于将fetch和merge两个命令放在一起执行,从版本库拉取代码并合并到本地。
10、将代码托管到GitHub上:
在github上start a project,来创建一个版本库。
给版本库命名,然后选择添加一个android项目类型的.gitignore文件,并使用Apache License 2.0来作为项目的开源协议。记得勾选README选项。
创建完版本库之后,新建一个android项目,将远程版本库克隆到本地:
在工程目录下:
git clone https://github.com/cococbx/LittleHuiHui-sWeather.git
就将版本库中内容clone到LittleHuiHui-sWeather文件夹中了。现在将这个目录中的所有文件复制到上一层项目根目录中,这样就能把整个项目添加到版本控制中去。(要注意.git是一个隐藏目录,不要漏掉,上一层中也 有.gitignore文件,替换即可)之后把LittleHuiHui-sWeather目录删掉。
最后把项目提交到GitHub上面:
1.将文件添加到版本控制中
git add .
2.本地提交代码
git commit -m "first commit"
3.将提交内容同步到远程版本库(GitHub)
git push origin master
这样就同步完成了。刷新github上的项目主页就可以看到提交的内容。
以上是关于Git的使用及托管代码到GitHub的主要内容,如果未能解决你的问题,请参考以下文章