git 常用命令以及资料收集

Git概念及基本操作详解
origin 是仓库,master是分支branch

git push <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>
git push origin master
相当于
git push origin master:master
删除主机的分支可以使用 --delete 参数,以下命令表示删除 origin 主机的 master 分支:
git push origin --delete master

https://blog.csdn.net/raoxiaoya/article/details/110862360

HEAD 是当前分支引用的指针,它总是指向某次commit,默认是上一次的commit。

Git分为工作区、暂存区、本地仓库和远端分支
在这里插入图片描述
1、工作区:本地电脑上的某项目工程的代码文件夹就是工作区。
2、暂存区:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。Git的版本库里存了很多的东西,其中最重要的就是成为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
在这里插入图片描述
我们把文件往Git版本库里添加的时候是分两步执行的;
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
在这里插入图片描述
第二步:是用git commit提交更改,实际上就是把暂存区的所有内容提交到本地仓库。

在这里插入图片描述
需要提交的文件修改统统放到暂存区,然后一次性提交暂存区的所有修改。
3、本地仓库
本地仓库就是上图的本地版本库,克隆自远程仓库。从下图可以看到,工作区、暂存区、本地仓库都是在本地计算机上的。
4、远端分支
git push命令能将本地仓库的代码上传到远端分支,但是必须经过committer确认之后才能合入远程分支。托管在网络上的项目仓库,Git的远程仓库是分布式的,能够极大保证代码的安全性。

原文链接:https://blog.csdn.net/m0_47503416/article/details/110100690

Git add
git add [参数] <路径> 作用就是将我们需要提交的代码从工作区添加到暂存区,就是告诉git系统,我们要提交哪些文件,之后就可以使用git commit命令进行提交了。
 为了方便下面都用 . 来标识路径, . 表示当前目录,路径可以修改,下列操作的作用范围都在版本库之内。

git add .
不加参数默认为将修改操作的文件和未跟踪新添加的文件添加到git系统的暂存区,注意不包括删除
git add -u .
-u 表示将已跟踪文件中的修改和删除的文件添加到暂存区,不包括新增加的文件,注意这些被删除的文件被加入到暂存区再被提交并推送到服务器的版本库之后这个文件就会从git系统中消失了。
git add -A .
-A 表示将所有的已跟踪的文件的修改与删除和新增的未跟踪的文件都添加到暂存区。

git commit 主要是将暂存区里的改动给提交到本地的版本库。每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id,
 commit-id 在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里.

git commit -m ‘message’
-m 参数表示可以直接输入后面的“message”,如果不加 -m参数,那么是不能直接输入message的,而是会调用一个编辑器一般是vim来让你输入这个message,
message即是我们用来简要说明这次提交的语句。
git commit -am ‘message’ -am等同于-a -m
-a参数可以将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库,即使它们没有经过git add添加到暂存区,
注意: 新加的文件(即没有被git系统管理的文件)是不能被提交到本地仓库的。

Git push
在使用git commit命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了,如果不清楚版本库的构成,可以查看我的另一篇,git 仓库的基本结构。
 git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名> ,例如 git push origin master:refs/for/master ,即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名。第一个master是本地分支名,第二个master是远程分支名。

git push origin master
如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建
git push origin :refs/for/master
如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin –delete master
git push origin
如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支
git push
如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名
关于 refs/for:
refs/for 的意义在于我们提交代码到服务器之后是需要经过code review 之后才能进行merge的,而refs/heads 不需要

git 常用命令:
git remote -v
git status
git checkout -b branchname (强制性创建分支)
git checkout origin/hk_metro
 git commit -m 'add new lib'
git push origin master
git checkout origin/hk_metro
git checkout origin/hk_metro -b hk_metro
 git pull --ff-only
 git add Server/RobServer/RobServer.vcxproj Server/x64/Release/*.dll

git在本地可以切换分支,分别编辑

git tag

git show tag-name

git checkout tag-name
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值