菜鸟入门级Git简单教程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/q95548854/article/details/82183665

因CSDN上传图片不方便,这里放一个原文笔记(有道云笔记的)的链接,想要看图文的点我看图文,以下只是文字部分。



一、远程仓库与多人协作

1、从远程仓库clone项目到本地仓库

https://github.com/
注册登陆后,创建新的仓库:

然后 Create repository
在任意位置创建一个git本地仓库

进入本地仓库,右键空白处,选择Git Bash Here(Git 命令行)

然后进行设置:在命令行输入:
g i t c o n f i g g l o b a l u s e r . n a m e Y o u r N a m e git config –global user.email “[email protected]

因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。
注意git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
然后使用 git init 命令,将此文件夹变成一个git仓库。

会发现刚才的文件夹内多了个.git 文件夹
如果没有看到.git文件夹,因为它是隐藏的文件夹,可能没有打开查看隐藏的文件夹,在文件夹设置中选择查看隐藏的文件就ok了

接下来我们要将本地仓库和远程仓库进行关联。
$ git remote add origin https://github.com/MZ8023/GitTest.git

接下来我们要把远程仓库(git网站刚才创建的或者别人创建好的)上的项目克隆下来
$ git clone https://github.com/MZ8023/GitTest.git
显示类似如下内容即成功,如若出现fatal;error字样则表示未成功,并会提示你原因。

*小提示:git clone 直接加网址就好(此网址可以在远程仓库中找到)

此时我们查看本地仓库,发现多了一个文件夹,这个文件夹就是远程仓库上的项目总文件夹,进入该文件夹,可以看到所有的文件(本项目目前只有一个README文件)

上面完成了从远程仓库clone项目到本地仓库(一般只有第一次加入项目需要用到这个命令,之后的命令都是进行代码的上传、下载,分支的切换、合并等)

2、项目的更新及下载

上面我们将项目clone下来后,一般需要在本地继续编写代码,修改项目,我们来做一个模拟:
首先修改我们本地的README文件,并且新建一个test.txt文件,模拟在本地仓库修改了项目。

接下来我们代码写好后,要上传到远程仓库,进行代码的更新同步。
进入到项目根目录
cd GitTest

首先学习一个命令
$ git status

git status命令可以让我们时刻掌握仓库当前的状态,上面的命令输出告诉我们,READEME被修改过了,并且新增了一个test.txt文件,但还没有提交修改。

然后我们正式开始上传
首先第一个命令:
$ git add .
它会把工作时的所有变化提交到暂存区(暂存仓库),包括文件内容修改以及新文件,但不包括被删除的文件。

此时我们查看下状态:
$ git status

提示我们修改了READEME,添加了新的文件,可以提交了

接下来我们需要更新同步到远程仓库
第一步:提交
$ git commit -m “本次提交描述”
该命令会将git add .存入暂存区修改内容提交至本地仓库中,若文件未添加至暂存区,则提交时不会提交任何修改。

此时我们查看下状态:
$ git status

Git告诉我们当前没有需要提交的修改,并且工作区是干净的。
第二步:推到远程仓库
$ git push origin master
其中origin代表的是远程仓库(固定不变),master位置放的是分支的名字,master是主分支。

成功,远程仓库也看到了

=======================================================================

3、多人合作

牢记四句代码
git pull origin master
git add .
git commit -m “xxx”
git push origin master
当你想上传时 先pull 就是拉下来远程仓库的代码, 然后再提交自己的代码
例如:我们要删除test.txt文件
在本地删除后 进入命令行

四步

远程仓库也没了

二、分支相关

当你写一个模块的代码的时候,为了避免将其他所有模块打乱,或者误操作对代码造成影响等情况。
分支的代码可以和主分支(master)代码相同,一般是先把主分支代码复制到其他分支,然后在其他分支上进行开发新模块,等到其他分支上的代码模块都没有问题的时候,再合并到主分支中,主分支相当于代码的备份。可以有多个分支,多人同时开发不同的模块。

1、创建分支

先在本地创建一个名叫 xsx 的分支
$ git branch xsx

然后我们可以查看所有的分支
$ git branch

前面带*的就是你当前所使用的分支,接下来我们切换到xsx分支进行开发
$ git checkout xsx

当前我们就进入了xsx分支,此时我们本地仓库代表的就是xsx分支,然后我们在xsx分支中开发,比如新建个ttt.html文件

然后提交代码到远程仓库

注意一定要推送到xsx分支
可以发现远程仓库中master分支下并没有 ttt.html

切换到xsx分支发现里面含有 ttt.html

当我们在xsx分支编写完此模块所有的代码并测试功能后,我们需要将此分支合并到master主分支中,进行代码整合。
首先切换到 master分支
$ git checkout master

然后将 xsx分支 合并到此时的master分支
$ git merge xsx

合并成功!此时xsx分支的任务完成了,我们可以将其删除,删除分支:
$ git branch -d xsx —— -d 代表 delete

三、版本回退与日志查看

1、日志查看

有的时候我们需要查看下最近都有谁提交了什么,或者忘记自己之前写了什么,去查看下历史提交记录之类的。
$ git log

在这里我们能看到最近提交的信息(时间,message,版本号等),其中commit 后面的就是版本号。

2、版本回退

当代码一团糟,想要重写的时候,可以使用版本回退,先用git log查看最近提交的版本,找到一个你想回退的版本,复制它的版本号,然后输入命令。
$ git reset –hard 版本号

例如:我们先做几次提交

然后再来一次
修改了 新建文本文档 并没有新增文件的时候 可以简化命令

然后我们查看日志

我们现在想回滚到 新增新建文本文档12 那次
选择右键复制版本号(看准了 版本号在文字的上方)

输入命令
$ git reset –hard 5b252231c16141daf4cb8f41663cd10b08f0db98

在看我们的本地仓库

修改 新建文本文档 已经不见了 内容消失了 完全回到刚刚新建的时候了。

==============================================================

Git常用命令

git add . # 将所有修改过的工作文件提交暂存区
git rm # 从版本库中删除文件
git reset –hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
git diff # 比较当前文件和暂存区文件差异
git diff # 比较两次提交之间的差异
git diff .. # 在两个分支之间比较
git log #查看提交统计信息
git log # 查看该文件每次提交记录
git branch -d # 删除某个分支
git branch -D # 强制删除某个分支 (未被合并的分支被删除的时候需要强制)
git branch # 查看本地分支
git branch -r # 查看远程分支
git branch # 创建新的分支
git merge # 将branch分支合并到当前分支
git pull origin master
git stash
git stash pop
git stash list # 列所有stash
git commit -m “xxx”
git push origin master # 将本地主分支推到远程主分支

git remote -v # 查看远程服务器地址和仓库名称
git remote show origin # 查看远程服务器仓库状态
git remote add origin git@ github:robbin/robbin_site.git # 添加远程仓库地址
git remote set-url origin git@ github.com:robbin/robbin_site.git # 设置远程仓库地址(用于修改远程仓库地址)
git remote rm # 删除远程仓库

查看、添加、提交、删除、找回,重置修改文件
git help # 显示command的help
git show # 显示某次提交的内容 git show $id
git co – # 抛弃工作区修改
git co . # 抛弃工作区修改
git add # 将工作文件修改提交到本地暂存区
git add . # 将所有修改过的工作文件提交暂存区
git rm # 从版本库中删除文件
git rm –cached # 从版本库中删除文件,但不删除文件
git reset # 从暂存区恢复到工作文件
git reset – . # 从暂存区恢复到工作文件
git reset –hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
git ci git ci . git ci -a # 将git add, git rm和git ci等操作都合并在一起做                                    git ci -am “some comments”
git ci –amend # 修改最后一次提交记录
git revert

猜你喜欢

转载自blog.csdn.net/q95548854/article/details/82183665