您的位置:首页 > 其它

Git学习总结---命令操作

2017-12-29 00:00 225 查看
一、Git了解:

1. 分布式版本控制系统,每一个人的本地电脑上的都是一个完整的版本库,即相对自己来说是本地版本库,相对别人来说是一个远程版本库。

2. 在本地版本库中基本操作流程为:

创建本地版本库—》在本地版本库中新增、修改、删除文件及内容—》将操作后的文件有工作去暂存(add)到暂存区—》将暂存区中的文件一并提交(commit)到本地版本库中

3. 与远程库相关联的操作:

克隆远程库版本到本地库中—》在本地库中进行本地库中的各种操作—》将本地库中的版本推送到远程库中的对应的版本上(推送失败及有冲突需解决,解决步骤:pull拉去最近的版本库,并进行合并,合并冲突则解决冲突,最近将解决后的文件再次推送到远程库中)

4. Git相关:

Git只是一个版本管理工具,而相应的gitbut和bitbucket是一个版本管理的平台,一般所有正式的各个版本都在gitbut/bitbucket上进行管理。

通过git将需要的版本分支从该平台上下载下来。前提是需要有一个gitbut/bitbucket账号(里面应该需要一个邮箱地址),通过git从gitbut/bitbucket上克隆代码,由于两者之间的数据传输是通过ssh加密的,所以需要配置进行秘钥和公钥的配置:

(1)、公钥秘钥生成(首次使用需要自己生成):

命令中输入命令:ssh-keygen -t rsa -C “自己Git上设置的邮箱”

在当前目录下生成目录.ssh,该目录下有id_rsa(私钥)和id_rsa.pub(公钥)文件

在gitbut/bitbucket上对应的位置添加公钥

(秘钥需要在可视化工具sourcetree或者安装了Git插件的eclipse中添加)

二、Git安装及准备工作:

1. 选择32/64位对应版本安装,基本上傻瓜式安装,安装完后在。。。

2. 设置个人用户和邮箱,命令为:

git config --global user.name “填写个人用户名”

git congit --global user.email “填写个人邮箱”

三、Git具体命令操作:

1. 创建版本号......算了,考拉上身了不写了......就以操作流程顺序排列到四中的常用命令中,以这些命令为主线贯穿一下Git的学习及基本操作

四、常用命令总结:

1、本地仓库操作命令:

mkdir :mkdir test (在当前目录下创建一个test文件夹)

pwd :pwd (显示当前目录的路径)

git :git init (把当前的目录变成可以管理的Git仓库,生成隐形.git文件)

git add xx :git add test.txt(把text.txt文件添加到暂存区去)

git commit -m “提交文件的描述”:将暂存区中的文件提交到本地仓库

git status :查看本仓库的状态(未暂存的文件,暂存未提交的文件等)

git diff test.txt:查看test.txt文件修改了那些内容(只针对修改后还没添加到暂存区的文件)

git log :查看当前用户的提交的历史记录

git reset --hard HEAD^ 或者 git reset --hard HEAD~:回退到上一个版本

git reset --hard HEAD^^:回退到上上一个版本

git reset --hard HEAD~100:回退到第100个前的版本

cat text.txt:查看test.txt文件的内容

git reflog:查看所有的历史记录的版本号id(包括以前已经回退的)

git checkout -- test.txt :还原(或叫做丢弃)工作区(即修改后的文件还没有添加到暂存区中的状态)中的修改

rm test.txt :删除test文件,但是没有添加到暂存区中(需要通过命令git add test.txt添加到暂存区中)

git checkout test.txt:恢复删除的test.txt文件(只针对删除后没有添加到暂存区中的文件)

git rm test.txt :删除test文件,并且添加到暂存区

2. 与远程仓库操作的命令:

(1).添加远程库:

git remote add origin http://github.com/www_test_git/testgit01.git(将本地库添加到空的远程库上)
git push -u origin master (由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令,即:git push origin master)

(2).克隆远程库及与远程库的一些

git clone http://github.com/www_test_git/testgit01.git (将testgit01仓库克隆到本地)

git branch(查看分支状态,即该仓库都有哪些分支,当前是在哪个分支上)

git branch dev(创建dev分支,注:其中新创建的dev分支内容继承于当前所在分支,若在文件夹里新增一个文件,则无论切到哪个分支上都能看到,只有将新建的文件添加提交到当前的分支上时,在切换到另一个分支时,该新增的文件将消失,只存在于提交的那个分支上。)

git checkout dev(从当前分支切换到dev分支)

git checkout -b dev(创建并切换到dev分支上)

git merge dev (在master分支下进行该操作即将dev分支合并到master分支上,即将dev分支合并到当前分支)

git branch -d dev(在其他分支下删除dev分支)

git stash(隐藏当前分支的修改,无论当前分支是没添加到暂存区还是未提交,都先隐藏掉,不显示,去进行其他的任何操作)

git stash apply(切换到需要显示隐藏内容的分支上,用该命令显示出隐藏内容,但是该内容还在隐藏的空间中存在,可通过git stash drop 命令删除,可通过git stash list查看隐藏的内容还有多少)

git stash drop (删除隐藏的内容)

git stash list(查看隐藏的内容还有哪些)

===========远程库信息=============:

git remote (查看远程库的信息)

git remote -v(查看远程库的详细信息)

git push origin master(将本地的master分支推送到远程库中的origin分支上,其中,该操作需要在当前是master分支上进行,对于本地库中的主分支叫master,对于远程库中的主分支叫origin。 若将本地库中的dev分支推送到远程库中的origin分支上则:git push origin dev)

git checkout -b dev origin/dev(远程库origin主分支对应有一份分支dev,可在origin对应本地的master主分支下克隆出dev分支)

git pull(拉去最新分支内容,若推送有冲突,是因为自己和其他人改了同一个文件,别人已经更新推送到远程库中,需我们先拉取最新的然后解决冲突,在推送上去)

(3).多人协作完成文件提交到同一个远程库中时,一般步骤:

A、 首先,可以试图用git push origin branch-name推送自己的修改.

B、 如果推送失败,则因为远程分支比你的本地更新早,需要先用git pull试图合并。

C、如果合并有冲突,则需要解决冲突,并在本地提交。再用git push origin branch-name推送。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  git 命令