第一行代码 Git的使用

来源:互联网 发布:逍遥游翻墙软件 编辑:程序博客网 时间:2024/05/22 12:29

git – 版本控制工具

一、安装git
1、Linux环境
sudo apt-get install git-core

2、windows环境
到官网下载git的安装包,然后一路next。

安装完后,配置一下身份,这样 在提交代码是就可以通过git查到是谁提交的了。
git config –global user.name “Archer”
git config –global user.emaol “xxxxx@163.com”

二、创建代码仓库(Repository)
新建一个工程目录(如:E:\Archer\github-android\Test),
然后 cd E:\Archer\github-android\Test
输入 git init

这样就把仓库创建完成了。可以看到Test目录多了一个隐藏的.git文件夹

如果想要删除本地仓库,只需要删除这个文件夹(.git)就行了。

三、提交本地代码
git add 用于把想要提交的代码添加进来
git commit 执行提交操作

四、忽略文件(很重要)
git 提供了一种可配性很强的机制来允许用户将指定的文件或者目录排除在版本控制之外。
它会先检查代码仓库的目录下是否存在.gitignore文件,如果存在的话,就会读取文件内容,
并把每一行指定的文件或者目录排除在版本控制之外。

Android Studio 在创建项目是会自动创建出两个.gitignore文件,一个在根目录下,一个在app模块下。
通常情况下,这部分内容是不用添加到版本控制中的。
这样就可以通过定义.gitignore文件来满足特定的需求了。

五、git常用命令
git status 查看修改记录
git diff 查看修改内容
git checkout 撤销未提交的修改
git reset HEAD 对已添加的文件进行取消添加操作
git log 查看提交记录

六、分支
git branch test2 创建分支test2
git checkout test2 切换到分支test2

在test2分支上修改并提交的代码并不会影响到master分支;
同样的,在master分支上修改并提交的代码也不会影响到test2分支。

在test分支上修改以后,可以通过merge命令合并到master上。
git checkout master
git merge test2
通过这两条命令就可以把test2分支上修改并提交的内容合并到master分支上了。

git branch -D test2 删除test2分支

七、远程版本库(很重要)
使用git进行团队开发,每个成员都从远程(服务器)上的版本库获取最原始的代码,然后进行各自的开发。
之后每次提交的代码都同步到这个版本库就可以了。

1、将本地的修改同步到远程版本库上
比如现在有个远程版本库的git地址是https://github.com/example/test.git
就可以使用命令将代码下载到本地:
git clone https://github.com/example/test.git

之后在这份代码的基础上进行修改和提交,通过命令同步到远程版本库上
git push origin master

其中:
origin 表示远程版本库的git地址
master 表示同步到哪一个分支

这条命令就完成了将本地代码同步到https://github.com/example/test.git 这个版本库的master分支上。

2、将远程版本库上的修改同步到本地
git 提供了两种命令来完成此功能,分别是fetch和pull

git fetch origin master
执行这条命令后,就会将远程版本库上的代码同步到本地,但是同步下来的代码不会合并到任何分支上去。
而是存放到一个origin/master分支上。
可以通过diff命令来查看远程版本库上到底修改了哪些内容
git diff origin/master

之后再用merge命令将origin/master分支上的修改合并到主分支上
git merge origin/master

而pull命令则是相当于将fetch和merge这两个命令放在一起执行了。
它可以从远程版本库上获取最新的代码并合并到本地
git pull origin master

八、将代码托管到github上
1、注册GitHub账号
2、点击Start a project,创建一个版本库
填写版本库命名:test
选中Public选项
选中Initialize this repository with a README
Add .gitinore:Android
Add a license:Apache License 2.0

接着点击Create repository

这样版本库就创建完成了。
可以看到,GitHub已经自动帮我们创建了.gitignore、LICENSE和README.md这3个文件。

九、实例
1、创建远程版库,并复制远程版本库的git地址(点击Clone or download就可以看到了)
2、创建Android工程项目(如Test),并把远程版本库克隆到本地。
cd Test
git clone git地址
3、将.gitignore、LICENSE和README.md这3个文件以及.git文件夹一同复制到Test根目录(.gitignore文件可以直接覆盖),删除下载的目录
4、输入命令
git add .
git commit
git push origin master
这样就把本地代码同步到远程版本库了。刷新一下GitHub页面即可看出新增的文件了。