git使用基础命令——个人整理2023年
git库所在的文件夹中的文件有4种状态
可以使用git status 或 git status -s 查看
test.txt 未加到git库是未跟踪状态 ?? 或 untracked files
test2.txt 是添加未提交 A 或 new file
requirements.txt 是修改git库里的文件,未提交 modified
test3.txt 是添加并提交 文件显示绿色
(1)Untracked:
未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
(2)Unmodify:
文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改,
而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
(3)Modified:
文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态,
使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改
(4)Staged:
暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态.
执行git reset HEAD filename取消暂存, 文件状态为Modified
Git 状态 untracked 和 not staged的区别
1)untrack 表示是新文件,没有被add过,是为跟踪的意思。
2)not staged 表示add过的文件,即跟踪文件,再次修改没有add,就是没有暂存的意思
#############################以下是个人亲测后整理的命令#########################
git安装
git使用
克隆项目分支到本地:
- 1)UI 右键 Git clone , 打开Branch 输入dev。(no checkout)
- 2)命令 Git CMD
// 默认克隆主分支 git clone http://git.longhu.net/cost-space-devself/cost-space-rpa.git //克隆指定dev分支 git clone -b dev http://git.longhu.net/cost-space-devself/cost-space-rpa.git
分支查看与切换
//查看当前使用分支 > git branch //切换分支 > git checkout -b dev //切换带版本 -b git checkout -b v0.9rc1 origin/v0.9rc1
提交项目到Git dev分支完整流程(推荐)
-
1)UI 右键 Git commit -> dev,勾选提交文件,写message。=》commit
-
2)命令 Git CMD
//1. 添加当前目录到暂存 git add . git reset [文件名] 即可撤销git的add操作。 //2.提交更新信息,修改内容的描述。 git commit -m 'add test.txt' //3. 先更新代码,从服务下拉代码并解决冲突。解决完冲突重复步骤 1-3。[可选参数,默认当前分支] git pull [origin dev] //4. 最后推送代码到服务 [可选参数] git push [origin dev]
提交流程方法2
1、git stash (这是将本地代码回滚值至上一次提交的时候,就是没有你新改的代码) 2、git pull origin 远程分支名(将远程的拉下来) 3、git stash pop(将第一步回滚的代码释放出来,相等于将你修改的代码与下拉的代码合并) 然后解决冲突,你本地的代码将会是最新的代码 4、git add . 5、git commit -m "" 6、git push origin master(git push origin 本地分支名:refs/remotes/远程分支名)
这几步将代码推至了远程
最后再git pull origin 远程分支名 一下,确保远程的全部拉下来,有的你刚提交完有人又提交了,你再拉一下会避免比的不是最新的问题
git其他操作
1. git log //查看版本号
2. git reset --hard 9162e702e164234b1aefe643dd5205f6abbbf0ce
//目标版本号”命令将版本回退
3. 再用“git log”查看版本信息,此时本地的HEAD已经指向之前的版本
4.使用“git push -f” 强制提交更改
https://blog.csdn.net/yxlshk/article/details/79944535
查看全部分支(本地+远程)
git branch -a
删除 分支
git push origin --delete [branchname]
删除文件
git rm -r filename