git学习笔记

作者: 缓冲剂 | 来源:发表于2020-02-26 15:35 被阅读0次

    本地命令

    1.基础类
    • git status:查看工作区与暂存区的变更状态
    • git add :从工作区提交到暂存区
    • git commit -m:从暂存区提交到分支,在-m后面添加备注
    • git diff:查看还没有commit的内容是否发生了变化
    • git log:查看本次启动的工作日志
    • git log --pretty=oneline:所有工作日志打印成一行
    • git log --abbrev-commit:每条工作日志的哈希值序列,只显示前面几个数字
    • git reflog:查看从建立git库后,所有的工作日志
    • git diff HEAD --文件名:查看工作区与版本库内,某文件的区别
    • git reset --hard HEAD^:返回分支中的上一个版本,【举例】先提交版本1到git库中,又提交了版本2,用了此命令就返回到版本1。
    • git reset --hard HEAD^^:返回分支中的上上个版本。
    • git reset HEAD 文件名:将暂存区的修改退回到工作区,其中HEAD代表文件的最新版本
    • git checkout --文件名:本命令使用分两种情况,一种是还没有add到暂存区,那么本次在工作区的修改全部取消,变成和git库里一模一样的文件;第二种情况,add到了暂存区,又在工作区进行修改,用了这个命令,撤销掉工作去修改,和暂存区的文件保持一致。主要思想是一致的:撤销掉工作区的所有修改,和后方(暂存区、git库)保持一致。
    • git rm 文件名:删除git库里的文件。【注意】如果是真的想删掉该文件,本地删除用Linux命令rm,然后git commit本次修改,再使用git rm在版本库里删除此文件。如果是本地不小心删错了,利用git checkout撤销本次修改。
    2.分支类
    • git checkout -b 新分支名:创建且切换到新分支。
    • git branch 新分支名:创建新分支,但不切换。
    • git checkout 分支名:切换分支。
    • git branch:查看所有分支及当前所在分支。
    • git branch -d 分支名:删除分支。
    • git branch -D 分支名:强制删除暂时没有合并的分支。
    • git switch 分支名:切换分支。
    • git switch -c 新分支名:创建并切换到新分支
    • git merge --no-ff -m "备注" 需要合并的分支名:不使用Fast Forward模式来合并分支,合并到当前分支。
    • git stash:将当前工作现场保存。
    • git stash list:查看所有已保存的工作现场。
    • git stash apply stash@{第几号工作现场}:恢复工作现场,仍保存 stash list 里该条内容。
    • git stash drop stash@{第几号工作现场}:直接删除stash list内该条现场信息,不恢复现场。
    • git stash pop stash@{第几号工作现场}:恢复工作现场,同时删除stash list内该条现场信息。
    • git cherry-pick 某commit的哈希号:在当前分支下,重复commit的操作,可以是其他分支的commit。
    3.标签类
    • git tag 标签名:给最近的commit打上标签。
    • git tag:查看所有标签。
    • git tag 标签名 哈希值id:给特定的commit打上标签,需配合git log进行查看。
    • git show 标签名:查看标签备注。
    • git tag -a 标签名 -m “备注” 哈希值id:给标签打上备注。【注意】,标签作用于单个commit上。
    • git push 远程库别名 标签名:将单个具体标签推送到远程库相应commit下。
    • git push 远程库别名 --tags:将所有标签推送到远程库,各自对应。
    • git tag -d 标签名:在本地删除具体标签。
    • git push 远程库别名:refs/tags/标签名:删除远程库具体标签。
    4.个性化
    • git config --global color.ui true:此命令使git命令显示不同的颜色。
    • git add -f 文件名:强制添加某个文件到git库(在使用了.gitignore的情况下)。
    • git config --global alias.命令别名 命令原名:应用变量别名,简化命令。
      git config --global alias.st status
      git config --global alias.co checkout
      git config --global alias.br branch
      git config --global alias.ci commit
      git config --global alias.unstage 'reset HEAD'
      git config --global alias.last 'log -1'

    远程命令

    初次使用远程库需要设置SSH,在本地命令行中输入 ssh-keygen -t sa -C "你的邮箱地址",之后一路回车,在用户主目录下找到.ssh文件夹,内含id_rsa私钥和id_rsa.pub公钥,将公钥上传到github或gitee等代码托管平台即可。

    • git remote add 给远程库起的外号 git@托管平台.com:账户名/远程库名.git:设置本地仓库对应的远程仓库
    • git push -u 远程库外号 远程库分支:第一次推送加上参数 -u,将当前本地所在分支,推送到远程库的自定义分支,同时将本地分支与远程库分支关联起来。以后直接使用git push 远程库外号 远程库分支即可。
    • git clone git@托管平台.com:账户名/远程库名.git:克隆远程仓库到本地。
    • git remote:查看已设置的远程仓库。
    • git remote -v:查看远程库的详细信息。
    • git remote rm 远程库外号删除已经设置的远程库。
    • git branch --set-upstream-to=远程库别名/远程库分支名 本地需要关联的仓库名:将远程仓库与本地仓库串流。
    • git pull 远程库名 远程库分支名:从远程仓库获取最新版仓库内容。

    相关文章

      网友评论

        本文标题:git学习笔记

        本文链接:https://www.haomeiwen.com/subject/xlhmchtx.html