android---------版本控制工具Git的使用

操作系统:windows

安装:

Windows系统下安装Git,直接next就可。

git是分布式版本控制系统。


命令详解:


配置身份

 git config --global user.name "Your name"

 git config --global user.email "email@example.com"
注意 git config 命令的 --global 参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

创建代码仓库

git init

选择一个合适的地方,创建一个空目录

输入一些的命令

mkdir:创建一个目录

cd:找到当前目录

pwd:显示当前目录

注意:在windows系统下,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。

查看隐藏的.git文件夹

ls -al

.git目录中的文件是是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。


提交本地代码

1、添加具体文件

git add AndroidManifest.xml

可以反复多次使用,添加多个文件。


2、添加整个目录下的文件

git add src

3、添加所有文件

git add .

git add 实际上就是把文件修改添加到暂存区。


4、提交文件

git commit -m "First commit."
一次提交,可以提交多个文件的。
注意在commit 命令的后面我们一定要通过-m 参数来加上提交的描述信息,没有描述信息的提交被认为是不合法的。

git commit实际上就是把暂存区的所有内容提交到当前分支


5、从工作区删除文件

rm filename

6、从版本库中删除文件

git rm filename



查看修改内容

git status
此命令命令可以让我们时刻掌握仓库当前的状态。
查看更改内容

git diff

若想查看某一个文件更改的内容,可以在后面加上文件的具体路径,如:

git diff src/com/demo/providertest/MainActivity.java

撤销未提交的修改

git checkout -- src/com/demo/providertest/MainActivity.java
注意:git checkout-- file令中的--很重要,没有--,就变成了“切换到另一个分支”的命令。

git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

取消添加

git reset HEAD src/com/demo/providertest/MainActivity.java

在Git中,用HEAD示当前版本,上一个版本就是HEAD^上上一个版本就是HEAD^^,当然往上100个版本写100个^较容易数不过来,所以写成HEAD~100。

git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。

对于已添加的文件我们应该先对其取消添加,然后才可以撤回提交。

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,可以使用版本回退,不过前提是没有推送到远程库。


查看提交记录

git log

当提交记录非常多的时候,如果我们只想查看其中一条记录,可以在命令中指定该记录的id(版本号),并加上-1 参数表示我们只想看到一行记录,如下所示:

git log 2e7c0547af28cc1e9f303a4a1126fddbb704281b -1

上面的id(版本号)没有必要写全,写前几位就可以,git会自己去找的,当然也不能只写一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。


而如果想要查看这条提交记录具体修改了什么内容,可以在命令中加入-p 参数,命令如下

git log 2e7c0547af28cc1e9f303a4a1126fddbb704281b -1 –p

下面的命令是将id(版本号)和注释显示为一行,不显示作者、提交时间等具体的内容

git log --pretty=oneline


下面的命令可以查看每一次的commit id(版本号)

git reflog


查看当前版本库当中的分支

git branch –a

git branch命令会列出所有分支,当前分支前面会标一个*号。


创建分支

git branch versionname
如创建一个名为version1.0 的分支:

git branch version1.0

切换到分支

git checkout versionname


创建并且切换到分支

git checkout -b versionname


合并修改的内容到master分支上

git checkout master
git merge versionname

若在merge后加上--no-ff参数,表示禁用Fast forward



删除分支
git branch -D versionname


关联远程库

git remote add origin git@server-name:path/repo-name.git


第一次推送master分支的所有内容

git push -u origin master

注意加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令


将远程版本库的代码克隆到本地

git clone https://github.com/exmaple/test.git


把本地修改的内容同步到远程版本库

git push origin master

其中origin 部分指定的是远程版本库的Git 地址,master 部分指定的是同步到哪一个分
支上,上述命令就完成了将本地代码同步到https://github.com/exmaple/test.git 这个版本库的
master 分支上的功能

将远程版本库上的修改同步到本地

git fetch origin master

从远程版本库上获取最新的代码并且合并到本地

git pull origin master
注意远程库的名字就是origin,这是Git默认的叫法。

查看分支合并图

git log --graph




推荐一个很好的git教程:

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

http://www.cnblogs.com/BeginMan/p/3591005.html

http://www.ihref.com/read-16369.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值