git & gitflow & github 目录

reference

初学者可以在线练习的网站Learn Git Branching 可以拿这个自测一下(虽然我自己也没测还hh)



git

基本操作


advanced

  • 解决git pull/push每次都需要输入密码问题(非明文) – 使用libsecret(自己的机子就放心用store的方式了呗) 其实最简单是就是当前机子的公钥上传到,多把公私钥的管理请见:多个公私钥管理 【下面的子内容不用读了】

    大意就是git after 2.1.1 uses libsecret(supported still by GNOME keyring) instead of gnome-keyring。编译libsecret有点小注意点,按照SO的来就可以

    • 虽然重新登陆后第一次使用的时候要输keyring,但是整个机子上只需要记这一个简单点的password就行,而且不需要再输入账号名和密码了。
    • attention ,git config --global只会对当前user 起作用。配置信息可以查看~/.gitconfig 或者git config --list
  • ~/.gitconfig别名配置

  • git补全

  • .gitignore

  • 上传大文件时候的git lfs,reference blog:详解 Git 大文件存储(Git LFS)

    • 安装
      # ubuntu
      curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.rpm.sh | sudo bash
      sudo apt-get install git-lfs
      git lfs install
      
    • 使用
      • 上传
      git lfs track xxxFile
      git add .
      git commit -m "xxx"
      git push
      
      • 拉取
      git lfs clone 或者 git clone # 前者显式lfs clone 性能会更好
      git lfs pull 或者直接 git pull
      
    • 如果已经git lfs track了但还是报错,清除下缓存或者返回到上一个没有报错的commit,然后重新add提交 或者 清除下缓存:
     git rm -r --cached ./
    

详细展开

hesy:git merge
hesy:git diff,git checkout,git rm
hesy:git reset & git revert
hesy:git rebase


others

working tree /stage(index) / commit history

自己local机子上的就是working tree(工作区)
add之后的就是staged,进了stage的(缓存区)
commit之后就是提交到当前本地的分支,也就是版本库(commit History)
进一步要将本地分支提交到远程仓库就是用git push

要操纵缓存区的文件 一般在路径前面加 --

git rm -r -- cached .
git checkout 

gitflow

github-tool

问题解决

to-do

猜你喜欢

转载自blog.csdn.net/Hesy_H/article/details/106192930