美文网首页
Git 常用命令

Git 常用命令

作者: SkyRiN | 来源:发表于2017-11-23 17:24 被阅读25次

    初始化一个本地仓库

    git init
    

    将文件从工作区添加到暂存区

    git add <file>
    

    取消暂存 file

    git reset HEAD <file>
    

    生成 rsa 格式 ssh 公私钥

    ssh-keygen -t rsa -C "youremail@example.com"
    

    生成 rsa 格式 ssh 公私钥并重命名

    ssh-keygen -t rsa -C "youremail@example.com" -f ~/.ssh/custom-name
    

    关联本地仓库到远程仓库 url

    git remote add origin url
    

    将文件从暂存区取出并保存到仓库

    git commit
    

    将文件从本地仓库推送到远程仓库

    git push
    
    -u (--set-upstream): 对于每个最新或成功推送的分支,添加上游(跟踪)引用,用于无参数的 git-pull 和其他命令
    

    查看仓库目前状态

    git status
    

    显示文件两个版本之间的差异,输出内容与 git log -p 相同

    git diff
    

    显示所有 commit 内容

    git log
    
    -- oneline : 一个 commit 显示一行内容为 SHA+TITLE
    -- stat : 查看哪些文件被修改以及添加/删除了多少行代码
    - p(--patch) : 显示对文件作出的实际更改
    - w : git log -p -w 将显示补丁信息,但是不会突出显示仅更改了空格的行
    

    将仅显示一个 commit 内容

    git show
    

    合并与衍合

    git merge <branch>    #合并指定分支到当前分支
    git rebase <branch>   #衍合指定分支到当前分支
    

    强制覆盖本地内容

    git fetch --all  
    git reset --hard origin/master 
    git pull origin master
    

    .gitignore 通配规则

    .gitignore 文件用来告诉 git 不应跟踪的文件。该文件应该与 .git 目录(默认隐藏)同级。

    • 空白行作为空格

    • # : 将行标记为注释

    • * : 与 0 个或多个字符匹配

    • ? : 与 1 个字符匹配

    • [abc] : 与 a、b 或 c 匹配

    • ** : 与嵌套目录匹配 - a/**/z 与以下项匹配:

      a/z
      a/b/z
      a/b/c/z

    其它常见问题

    git无法pull仓库refusing to merge unrelated histories
    solution: git pull origin master --allow-unrelated-histories

    代码体积太大出现fatal: early EOFfatal: index-pack failed等错误
    solution: 在*[git installed path]*/etc/gitconfig(没有可手动创建)文件中添加

    [core]
    packedGitLimit = 512m 
    packedGitWindowSize = 512m
    

    参考

    命令速查表

    相关文章

      网友评论

          本文标题:Git 常用命令

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