您的位置:首页 > 编程语言

git 简明使用教程

2016-07-06 11:34 295 查看
最近学习了git 的使用方法,在此整理记录一下,本文将以最简单有效的方式说明git的使用方法,方便查看。

1.git是什么

git是一个版本管理工具,可以管理记录你的文件变化过程,随时找回编辑前的版本。但是git只能查看文本类文件的改动,其他文件类型看不到详细改动内容。

同时git也能够连接远程仓库例如github,将文件存储在远程服务器,便于多人协作和共享。

2.git安装

在命令行或terminal中输入“git”查看是否安装,如果没有安装:

Linux

terminal中输入

sudo apt-get install git


mac OS X

下载Git OS X Installer安装

Windows

下载git安装

安装完成后,windows使用git bash,linux使用Shell进行操作,输入

git config --global user.name "Your Name"
git config --global user.email "email@example.com"


进行用户名和邮箱的设置,至此,安装完成

3.建立本地库

使用命令行在任意一个文件夹目录中输入

git init


可以将当前文件夹设置为本地仓库,同时此文件夹中会多一个“.git”的隐藏文件夹作为版本库和保存git相关配置

4.文件操作



上图所示为git文件操作流程,我们首先在初始化的本地仓库建立一个文件test.txt。

提交流程

此时,在当前文件夹目录下输入

git status


查看当前版本库状态,可以看到输出



表明当前工作区有改动,此时我们输入

git add test.txt


将test.txt文件加入到暂存区,再输入git status查看状态,可以看到



表明文件已经加入到暂存区,我们输入

git commit -m "add test.txt"


将文件提交到办本库中,-m参数后的字符串表示提交说明,至此,本地文件提交流程完毕。

撤销流程

本地库的所有操作都有撤销的方法,如果我们要撤销工作区内的文件修改操作(add之前),在当前文件夹下输入

git status


可以看到被修改的文件列表



此时我们输入

git checkout -- test.txt


就能够撤销test.txt的修改,使文件回到上一次add或commit的状态。

如果要撤销在暂存区内的文件(已经add但是没有commit),只输入

git status


可以看到已经被add到暂存区的文件列表



此时我们输入

git reset HEAD test.txt


就能将test.txt退回到工作区,再使用

git checkout -- test.txt


撤销工作区的修改

如果要撤销已经commit的文件,我们就要使用版本回退功能,首先输入

git log --pretty=oneline


查看过去各版本信息



第一个空格前的长串字符是唯一的版本号,此时输入

git reset --hard c9c5c0


就能够退回到版本号以c9c5c0开头的版本去,–hard后跟版本号,可以不用全部输入,git会自动查询。

也可以使用

git reset --hard HEAD^


退回到上一个版本,HEAD^表示上一个版本,HEAD^^表示上两个版本,HEAD~100表示上一百个版本。

退回版本后原来的版本并不会消失,使用git reset –hard 版本号仍然能够转移过去。

git reflog


命令也能够查询过去进行操作的版本号。

5.github远程仓库

gihub配置

首先在github上注册一个账号并新建一个仓库



然后我们在本地仓库目录下输入

ssh-keygen -t rsa -C "youremail@example.com"


输入自己的邮箱,余下步骤回车,之后我们能在用户目录(不是git 安装目录)下找到.ssh文件夹,其中的id_rsa.pub就是公钥文件,使用文档编辑器打开,复制其中全部内容。

进入github上的setting后点击SSH and GPG keys



点击new SSH keys后,将复制的内容粘贴到key框中,输入title,完成github的配置。

本地文件发布到github

首先,输入

git remote add origin git@github.com:yourName/yourRepository.git


其中yourName是你的用户名,yourRepository是你在github上的远程仓库名,这一步将远程仓库命名为origin 并连接上了本地仓库。

接下来使用

git push -u origin master


就能将本地已经commit的文件发送到github上你的关联仓库的master分支中,第一次使用-u参数以后就不需要了。

如果push出现下图所示的错误



表明远程仓库和本地仓库有冲突存在,应该先使用

git pull origin master


将远程仓库的mater分支下载到本地,然后在本地文件中解决冲突后再进行push操作即可。

5.分支

不同分支互不影响,只有在合并分支的时候需要解决冲突。

输入

git checkout -b newBranch


在本地创建一个名为newBranch的分支,并切换到这个分支进行操作。

使用

git branch


查看分支列表,分支前带“*”表示正在使用当前分支。

切换分支

git branch branchName


合并指定分支到当前分支

git merge branchName


git push origin develop


创建远程分支,本地分支创建后push远程仓库会自动创建一个新分支

删除本地分支

git branch -d branchName


删除远程分支

git branch -r -d origin/branchName
git push origin :branchName


将本地分支与远程分支进行连接

git branch --set-upstream branchName origin/branchName


在合并分支的时候可能会产生冲突,此时git会提醒你手动解决冲突,在冲突文件中<<<<<<<、>>>>>>>之间的内容是冲突内容,=======表示两个文件冲突内容的分界线,解决冲突后使用add,commit提交。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  git github