Git简介
GIT,全称是分布式版本控制系统,git通常在编程中会用到,并且git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
Git提交更新代码具体步骤
//1.检查是否有可提交的文件
$ git status//(显示为Modified,则为修改的文件)
//2.拉取更新服务器代码(防止冲突)
$ git pull origin master
//3.添加所有提交的文件至缓存
$ git add .//(意思是将你本地所有修改了的文件添加到暂存区)(.代表全部,也可以只提交单个文件,格式:$ git add 文件名 可以用空格分隔,指定上传多个文件)
//4.提交暂存区的文件
$ git commit -m “提交内容的注释”//“”里面的内容是提交说明(否则不允许提交)
//5.上传到远程仓库
$ git push origin master
部分命令整理
1.版本回滚
$ git log : 显示从最近到最远的提交日志
$ git reset --hard commitID : 回滚到某个版本
$ git reflog : 记录你的每一次命令
$ git push -f -u origin master : 提交回滚后的版本
2.撤销更改
$ git checkout -- file : 可以丢弃工作区的修改
$ git reset HEAD file : 可以把暂存区的修改撤销掉(unstage)
3.下载远程仓库(含有对方的.git文件夹)
$ git clone xx : 下载远程仓库(含有.git)
4.查看当前仓库的状态
$ git status //查看版本库状态,什么被修改过但还没提交的
$ git diff //查看当前相对上一次提交修改的内容
5.撤销修改
$ git checkout -- test.html
6.删除文件
$ rm test.index //可直接在文件管理中删除文件,要不用rm 命令去删除
$ git rm test.html //从版本库中删除
$ git commit -m '删除 test.html文件'
$ git branch -D //丢弃一个没有被合并过的分支,可以通过强行删除。
7.解决冲突:
同一文件修改冲突,需要手动解决冲突后再提交。git status可查看冲突,根据标记可修改冲突部分,修改结束后再重新提交。
$ git pull //拉取远程内容
$ git log --graph //命令可以看到分支合并图。
8.改变Git颜色
$ git config --global color.ui true
9.分支
$ git branch : 列出所有分支
$ git branch : 创建分支
$ git checkout : 切换分支
$ git checkout -b xx : 创建并且切换到xx分支
$ git merge : 合并到当前分支
$ git branch -d : 删除分支
$ git log --graph : 查看分支合并图
$ 合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并
10.Bug分支
$ git stash : 把当前工作现场“储藏”起来
$ git stash list : 查看工作现场列表
$ git stash apply : 恢复-> 恢复后-> stash内容并不删除
$ git stash drop : 删除工作现场的内容
$ git stash pop : 恢复的同时把stash内容也删了
11.Tag标签
$ git tag : 用于新建一个标签
$ git tag -a -m xxx : 可以指定标签信息
$ git tag -s -m xxx : 可以用PGP签名标签
$ git tag : 查看所有标签
$ git push origin : 推送一个本地标签
$ git push origin --tags : 推送全部未推送过的本地标签
$ git tag -d : 可以删除一个本地标签
$ git push origin :refs/tags/ : 可以删除一个远程标签
Git提交遇到错误后怎么保留修改同时更新呢
git stash的时候会把你本地快照,然后git pull 就不会阻止你了,pull完之后这时你的代码并没有保留你的修改。
git stash git pull origin master
git stash pop
这时候执行git stash pop你去本地看会发现发生冲突的本地修改还在,这时候你该commit push啥的就悉听尊便了。
如果不想保留本地的修改,那好办。直接将本地的状态恢复到上一个commit id 。然后用远程的代码直接覆盖本地就好了。
git reset --hard
git pull origin master
非特殊说明,本文版权归 Guo_Blogs 所有,转载请注明出处.
本文标题: Git使用的常用命令
本文网址: https://guoqingyun.top/Article/Detail?DPOR369E0zc=D5D9AC37100CF05D