Git基本命令集合

Git的操作原理

一个gitlib服务器有远程的分支以及存储设备,客户端操作,首先是从远端分支将数据下载到本地分支,然后进行修改、添加、删除的相关操作,随后在本地的分支中进行一次添加暂存提交的操作,再将分支推送上传到远端服务器,最后进行多分支合并操作。

对于分支,可以理解为创建一个账户,每个不同的分支都是不同的修改进度,但最后都要进行合并操作,合并到主线中,也就是master分支,这个分支在大部分情况下会有push限制,不允许进行push覆盖操作,只可以合并操作。

在本地git仓库中,HEAD是一个指针,他指的就是当前用户所在的分支,下面的所有操作在不具体的指定情况下,全部是在修改这个分支的内容。

大体逻辑就是:
远程分支下载到本地分支 --> 本地文件修改 --> 本地暂存并提交 --> 上传到远端并请求合并 --> 远端合并分支

所以用户在操作的时候,一般是在远端开创一个自己的分支,然后下载到本地进行修改,然后通过一系列操作推送到远端,远端进行数据整合,最后回归主线。

Git的基本操作

####克隆远端的git仓库到本地

  git clone .../*.git

这一般是第一步操作,把远端数据拷贝到本地,然后进行相关操作。

####查看文件状态

  git status

出现如下,代表发现有个未暂存本地的文件

Untracked files:
  (use "git add <file>..." to include in what will be committed)

出现如下,代表发现文件已经暂存到本地了

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

####比较简单的查看文件状态

  git status -s

这个比较简单:
看到??代表一个新的文本,还没有暂存本地分支。
看到A代表已经暂存到本地分支了,但是没有提交。
看到M说明没有暂存到本地分支。
看到D说明文件以及被删除或被移到分支存储位置外。
看到R说明文件修改了位置或者修改了名字
如果有AM那么说明是暂存后又发生了修改,需要再次暂存该文件。

####文件暂存和取消

git add 文件名     # 将文件暂存
git reset 文件名   # 取消文件的暂存

文件暂存是每次必须进行的操作,新建文件或者修改文件都需要先暂存文件。

####查看文件修改情况

查看没有暂存到本地的文件和现在的文件有哪些修改的部分

  git diff

查看当前暂存到本地的文件和远端存储的原件有哪些修改部分

git diff --staged

####提交更新
这是将文件提交到本地磁盘完成存储

git commit -m '提交的相关信息'

可以跳过 add 步骤,直接编辑文件后提交到本地

git commit -m '提交的相关信息' -a

添加后就会发现文件状态没了,因为已经存到磁盘中了。

Git修改文本内容

增删改都属于修改文本,赠包括新建文本、文本添加内容,删包括删除文本、删除文本内容,改包括修改文本位置、修改文本内容。

在此提醒一个注意事项,在修改了git分支的操作后必须要提交,只有当status没有数据的时候才算写完了。

####增删改文本内容、新建文本
修改完文件,需要先暂存add本地,再提交commit到本地分支。

####删除文本
删除本地文本后,我们会发现status得到的结构是 D ,那么我们就需要从git体系中删除

git rm 文件名
git rm -f 文件名   # 将暂存区中的文件内容也会删除

要注意,本地文件修改存储位置,以及重命名都会当做是删除了一个文本,创建了一个新的文本,git中移动文件和修改文件名,需要用特殊的方法。

除了我们手动产出本地文件外,也可以通过git rm 文件的方法,这样本地文件,和git本地分支文件都会被删除

####移动文本、修改文本名
这个是根据linux的操作特点,移动文本,可以指定移动后的文件名,这样也就可以实现修改文本名,不过需要进行提交操作

git mv 原文件地址/名字  新文件地址/名字
git commit -m '提交修改位置(名字)'

Git查看历史消息

####查看提交历史

git log
git log -p  # 显示历史提交对文件的变化情况
git log -p -数字n    # 查看最近的n次提交中的文件变化情况

查看所有分支的提交历史 (注意最新的提交在上面)

git log --oneline --decorate --graph --all

####进行撤销操作

git reset HEAD 文件     # 将上一次的git操作撤回
git checkout -- 文件   # 真正对文件有作用的撤销操作

这里建议,通git status查看该如何撤销,一般在文件上方都会写如何撤销该操作

Git分支操作

####查看当前所在分支

git branch

* + 绿色字体 的那个分支就是当前所在分支

####查看各个分支的同步情况

git branch -vv

查看每个分支现在的情况,如果需要同步远端的文件使用git pull origin master

####创建分支

git branch 分支名        # 注意这只是创建新的分支,不会切换分支
git checkout -b 分支名   # 创建新的分支并且切换到新分支

####切换分支

git checkout 分支名

这就是将HEAD指针指向新的分支,然后下面的所有操作都是对该分支进行的操作

####删除分支

git branch -d 分支名

注意:这里删除分支的前提必须是,该分支已经合并到了master中

####指定分支跟踪
当克隆一个仓库时,它通常会自动地创建一个跟踪origin/mastermaster分支

git checkout -b 创建到本地的分支 origin/远程分支

创建一个本地分支,一直跟踪一个远端分支,这个的主要作用是git pull后面不用跟参数了而已

Git远端的相关操作

####查看远端仓库的相关信息

git remote -v
git remote show origin    # 查看当前如果和远端进行推送、拉取等操作的缩写命令的含义

####将本地分支推送至远端分支

git push origin 分支名

####将远端分支同步到本地

git pull origin master(或者其他分支)

一般同步数据都是同步master的文件内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值