加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Git使用教程

发布时间:2020-12-14 16:39:58 所属栏目:百科 来源:网络整理
导读:创建版本库 mkdir : 创建文件夹。例如, mkdir ibos 创建文件夹名为ibos的空文件夹 pwd : 显示当前目录 ls -ah : 查看当前目录下文件列表,包括隐藏文件夹/文件 版本回退 git log --pretty=oneline : 将log记录显示为一行,包含版本号及commit信息 HEAD : 表

创建版本库

  • mkdir: 创建文件夹。例如,mkdir ibos创建文件夹名为ibos的空文件夹
  • pwd: 显示当前目录
  • ls -ah: 查看当前目录下文件列表,包括隐藏文件夹/文件

版本回退

  • git log --pretty=oneline: 将log记录显示为一行,包含版本号及commit信息
  • HEAD: 表示当前版本,HEAD^表示上一个版本,HEAD~100表示前100个版本
  • git reset --hard HEAD^: 表示回退至上一个版本。也可以通过git log查询需要回退的版本信息,获取commit id(可以只输入前半部分,git会自动模糊匹配),然后通过git reset --hard commitid回退至对应版本
  • cat filename: 可以查看对应文件内容
  • git reflog: 查看命令历史

撤销修改

git checkout -- readme.txt: 把工作区readme.txt的修改全部撤销,这里面有两种情况:

  1. 一种是readme.txt自修改后还没有提交到暂存区,现在撤销修改后就跟版本库是一致的;
  2. 一种是readme.txt已经添加到暂存区,又做了修改,现在撤销修改后就回到暂存区的状态;
    总之就是让这个文件回到最近一次git commit或者git add的状态

小结:

  1. 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
  2. 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
  3. 已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

删除文件

git rm test.txt: 删除test文件
Tip: 若删错了,可以通过git checkout -- test.txt恢复误删文件
git rm window -r -f: 删除window文件夹及其下所有的文件

删除本地分支

git branch -d branchname: 删除本地分支

删除远程分支

  • git push origin --delete : 删除远程分支
  • git push origin :: 删除远程分支

解决冲突

git log -graph: 可以查看分支合并图

分支管理策略

  • 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。
  • 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
  • git merge --no-ff -m 'merge with no-ff dev: 合并dev分支到当前分支,并且禁用Fast forward模式。 因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。
  • 合并以后,可以通过git log来查看分支记录

BUG分支

  • git stash: 暂存工作区修改
  • git stash list: 查看工作区暂存内容列表
  • git stash apply: 恢复工作区暂存内容,但恢复后,stash内容不会删除,需要使用git stash drop来删除
  • git stash pop: 恢复工作区暂存内容,并且删除stash内容
  • git stash cleat: 删除所有的stash
  • 你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令: git stash apply stash@{0}

Feature分支

  • 如果要丢弃一个没有被合并过的分支,可以通过git branch -D 强行删除。

多人协作

  • 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name

创建标签

  • git tag : 新建一个标签,默认是HEAD,也可以指定一个commit id
  • git tag -a -m 'blala..': 可以指定标签信息
  • git tag: 查看所有标签
  • git show : 查看某一标签的详细信息

操作标签

  • git tag -d : 删除本地标签
  • git push origin : 推送某一标签至远程分支
  • git push origin --tags: 一次性推送全部尚未推送的分支至远程
  • git push origin :refs/tags/: 可删除一个远程标签

git别名

git config --global alias. : 简化命令
比如: git config --global alias.st status: 将git status简化为git st

重命名分支

git branch -m : 重命名分支

Clone单一分支

git clonr -b --single-branch https://xxx.git: clone某一分支

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读