您的位置:首页 > 其它

Git常用操作命令

qq_24188311 2017-06-27 17:40 29 查看
常用命令

git --version       查看版本信息
git config --global user.name = "name"          配置用户名
git config --global user.email = "xxx@xxx.com"  配置用户邮箱

cd:切换工作目录,change directory
pwd:打印工作目录,print work directory
ls:查看指定目录的内容,不指定查看当前目录,list
-a:查看所有内容,包括隐藏文件(以.开头的文件)
-l:列表显示详细信息
clear:清空屏幕显示,快捷操作:ctrl + L

git init                    #创建版本库
git add filename             #添加指定文件,将文件修改从工作区添加到暂存区
git add .                   #添加所有文件
git commit -m "提交信息"      #提交记录
git commit -a -m "提交信息"   #提交记录(所有修改)
-a:提交所有修改,相当于执行了 git add .
git status                  #查看状态
-s                      #查看简短状态信息
git log                     #查看提交日志
--oneline               #一行显示,显示简短描述信息

git remote add origin url   #添加一个远程仓库地址
git push -u origin master   #将本地mater分支推送到origin仓库的master分支

git clone url               #从远程仓库克隆一个版本库


文件恢复命令:

git checkout filename #从暂存区恢复工作区(用法见链接:http://blog.csdn.net/leedaning/article/details/43701345

git reset filename #从版本库恢复数据到工作区(用法见链接:http://blog.csdn.net/hbwindy/article/details/51519999

文件忽略

并不是所有的文件都需要纳入版本管理,如运行过程中产生的日志,缓存等

可以将特定的文件进行忽略处理,忽略信息写在文件.gitignore中

忽略规则

#       表示注释,改行会被忽略,空行也会被忽略
test.txt        忽略指定文件test.txt
abc/            忽略abc文件
/abc            只忽略项目根目录下的abc
*.apk           所有apk文件
!a.apk          除了a.apk
*.[oa]          所有的.a和.o文件
abc/*.log       abc目录下的所有log文件,不会递归查找
abc/**/*.log    abc目录下的所有log文件,会递归查找


分支管理

查看分支:

git branch         #查看本地分支,带*表示当前所在的分支
git branch -r      #查看远程分支
git branch -a      #查看所有分支


创建分支

git branch develop [基于的分支或提交]  #创建分支develop


删除分支

git branch -d develop  #删除develop分支


切换分支

git checkout develop   #切换到develop分支


创建并切换分支

git checkout -b develop        #创建新分支develop,并切换到该分支


合并分支

git merge develop       #将develop分支合并到当前分支


合并冲突

冲突文件内容

<<<<<<< 目的分支
echo 1234444;
=======
echo 1233333333;
>>>>>>> 合并分支


解决冲突

1. 手动删除冲突标志

2. 保留正确内容

3. 添加(git add .)并提交(git commit)

项目开发

master:主分支,主要用来版本发布

develop:开发分支,保存正常开发的最新代码

local:表示本地添加功能时的临时分支,基于develop创建,最后需要合并到develop分支

描述:

在本地的功能分支上添加功能代码,测试完毕合并到develop分支
98ed
(之后可以删除能够分支)

在合并在develop分支之后需要推送到服务器,先使用git pull拉下来最新的提交

若有冲突,解决完冲突后再次提交,然后推送到服务器

从服务器上clone下来的项目只有主分支,其它分支看不见,首次使用需要checkout

git clone https://github.com/JerryCoding/test.git 
git checkout develop


ssh登录(无密码登录)

需要使用公钥私钥对

产生公钥私钥对ssh-keygen,会在~/.ssh目录下生成(id_rsa,id_rsa.pub)

将id_rsa.pub公钥中的内容粘贴到托管网站中即可

首次使用需要身份确认

以后就可以无密码的推送了

工作原理

工作区 <==> 暂存区 <==> 版本库 <==> 远程库

托管网站

github.com

git.oschina.net

coding.net
标签: