Git是一个版本控制工具,或者叫代码管理工具,它的优点就不说了,现在很多公司和项目都使用Git来管理项目代码。
Git的安装、使用网上有很多教程,可以自行查找。
本文主要说一下Git的基本使用,比较适合有一定Git基础的同学巩固知识和熟练运用:
1,打开Git Bash(Windows自带的cmd命令行也可以),
2,切换盘符:默认是在c盘的,比如切换到d盘,直接输入d:然后回车,再输入cd 你的项目完整路径,
比如:cd d:\AndroidWork\demo1
Git Bash需要将分隔符切换,像这样:切换盘符cd d: 切换到指定目录 cd d:/AndroidWork/demo1
注意:Windows系统下,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
3,执行Git命令
git init 创建仓库
git add . 可以一次性添加全部文件到仓库
git add test.text 添加指定文件到仓库
git commit -m"提交说明" 提交指定文件到仓库,可以多次add后一次性commit
:wq 如果不小心直接commit而没有写说明跳转到一个你不认识的界面,那么输入即可返回(不要
忘了冒号)
git reflog 查看历史命令,如果你找不到之前提交版本的id号可使用此条命令查看
git reset HEAD test.txt 把已add到暂存区的修改撤销到工作区
git checkout -- test.txt 撤销当前文件(工作区)的修改,即用仓库版本替换工作区版本
rm test.txt 删除工作区的某个文件,也可以到该文件夹手动delete删除
git rm test.txt 删除仓库中的某个文件,执行后需进行commit操作
远程仓库
以Github为例,
1,创建SSH Key
ssh-keygen -t rsa -C "youremail@example.com" 邮箱地址用自己的邮箱,然后一路回车,
之后找到刚才创建文件的.ssh目录下id_rsa.pub文件
2,登录Github--settings--SSH and GPG keys,点击Add SSH Key,填上任意Title,在Key文本框里粘贴id_rsa.pub文件
内容,点“Add Key”,你就可以看到已经添加的Key
3,在Github上创建一个仓库,比如:MyRepository,然后执行
git remote add origin git@github.com:用户名/MyRepository.git
4,把本地库内容推送到远程库
git push -u origin master 如果不成功可先执行git pull --rebase origin master将远程库的readme文件拉取到本地库,然后再
执行push命令
成功后可在远程库看到已推送的文件,以后每次提交后就可通过git push origin master将本地master分支的最新修改推送至
Github,至此,一个基本的分布式版本库配置完成。
5,如果从远程库拉取(克隆)文件到本地库,执行git clone git@github.com:用户名/仓库名.git 其中用户名和仓库名填自
己的
分支管理
1,git checkout -b one 创建并切换到指定分支,one表示分支名称
2,git branch one 创建指定分支
3,git branch 查看分支列表,带*表示当前分支
4,git checkout master 切换到指定分支,master表示分支名称
5,git merge one 合并指定分支到当前分支,多人修改同一文件提交后合并时会产生冲突,可打开冲突文件修
改,修改后删除<<<<<<<HEAD,=======,>>>>>>>然后执行add,commit即可,其它冲突请主动搜索
6,git branch -d one 删除指定分支
7,git log --graph --pretty=oneline --abbrev-commit 使用带参的log命令查看分支合并情况
8,git merge --no-ff -m"提交说明" one 表示禁用fast forward模式下的合并,可以在log中查看到合并过的历史分支记录
9,git stash 隐藏当前工作区未完成的工作内容
10,git stash list 查看隐藏的工作内容记录
11,git stash pop 恢复隐藏的工作区内容
12,git branch -D one 强行删除已提交但没有合并的分支
13,git remote 查看远程库名称
14,git remote -v 查看远程库详细信息
15,git push origin master 推送指定分支内容到远程库,多人提交可能会有冲突,可了解以下4条内容
16,git checkout -b one origin/one 根据远程库分支创建本地对应的分支,one表示分支名称
17,git branch --set-upstream one origin/one 指定本地分支one与远程分支one的链接
18,git pull 把最新提交从远程库抓取下来,有冲突时与分支冲突解决方式一样,解决后提交,再push
打标签
1,git tag v1.0 对当前分支打标签,v1.0表示标签名称
2,git tag 查看所有标签
3,git tag v1.0 d41e89 对指定提交打标签,d41e89表示指定提交的id
4,git show v1.0 查看标签信息
5,git tag -a v1.0 -m"标签说明" d41e89 创建带有说明的标签
6,git tag -d v1.0 删除标签
7,git push origin v1.0 推送标签到远程
8,git push origin --tags 推送全部未推送的标签到远程
9,git push origin :refs/tags/v1.0 删除远程标签,需提前删除本地对应的标签
以上就是本人总结的Git基本的使用命令,自定义Git(比如嫌某些命令太长,想简化命令)等等网上也有很多教程,大家可以进
行查看和学习。