Git使用指南

Git 使用指南

  • 初始化一个Git仓库,使 git init命令。
  • 可反复多次使用,添加多个文件 git add <file>
    • 一次性添加全部修改 git add -all
  • 使用命令git commit -m <message>
  • 从远程库克隆 git clone [https地址] [文件夹名字], 比如git clone https://github.com/llvm/llvm-project.git 会自动克隆为同名字的文件夹

版本控制

  • git log查看版本历程,git reflog 全部变化
    • 好看的log形式 git log --graph --pretty=oneline --abbrev-commit
  • 版本回退git reset --hard [commit id]
  • 查看当前的修改情况 git status
  • 撤销修改 git checkout --file

分支管理

  • 创建分支git branch <branch name>
  • 切换分支git checkout <branch name> 或者 git switch <branch name>
  • 创建并切换分支(合并上述两个操作)git checkout <branch name> -b 或者 git switch -c <name>
  • 查看当前分支git branch
  • 合并分支git merge <branch name>
    • 使用不会丢掉分支信息的方式合并 git merge --no-ff -m "merge with no-ff" <branch name> 不是用Fast Forward 模式合并,可以看到合并记录
  • 删除分支git branch -d <branch name>
  • 强行删除没有被合并的分支 git branch -D <branch name>
  • Bug管理(待需要时学)
  • Rebase(待需要时学)
  • 查看远程库的信息git remote -v
  • 推送分支 git push origin <master or branch name> (一般推送需要所有人跟进的分支)
    • 没有与本地关联时候的操作 git branch --set-upstream-to <branch-name1> origin/<branch-name2> 关联了本地的分支和远程库的分支
  • 抓取分支git checkout -b dev origin/dev(clone只有master的,还需要单独操作dev)

文件控制

git clean

git clean用于清除没有被跟踪的文件

$ git clean -n  # 显示那些文件会被清除
$ git clean -f  <path> # 删除未被跟踪的文件, 可以指定具体路径下
$ git clean -df  # 删除未被跟踪的文件和文件夹,不包含gitignore中的文件,d代表文件和文件夹,f代表强制运行
$ git clean -xf  # 删除未被跟踪的文件和文件夹,包含gitignore中的文件,x代表gitignore无效,包括文件和文件夹,f代表强制运行
  • 恢复成和commit_id 一样干净
$ git clean -df
$ git reset --hard <commit_id>
$ git status 

标签管理

创建标签

  • 查看标签 git tag (按照字母排序)
  • 创建标签 git tag -b <tag_name> (创建的标签都只存储在本地,不会自动推送到远程)
    • 给指定id加入标签 git tag -b <tag_name> [commit_id]
    • 创建带有说明的标签,用-a指定标签名,-m指定说明文字:git tag -a v0.1 -m "version 0.1 released" 1094adb
  • 查看tag 信息 git show <tag_name>

删除标签

  • 删除标签git tag -d <tag_name>
  • 如果要推送某个标签到远程,使用命令git push origin <tagname>
    • 一次性推送所有本地标签 git push origin --tags
  • 删除远程库的标签 git push origin :refs/tags/<tagname>

Github

放入公钥

  • ssh 生成 公钥密钥ssh-keygen -t rsa -C "xxx@qq.com"
    • 密码在根目录下的.ssh下 .pub文件是公钥
    • 将公钥放入githb账户的setting-ssh keys

忽略特殊文件

有需要的时候可以学习

参考:
廖雪峰教程
ssh公钥放入github

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值