Git 备忘录

作者: 进击的小铁 | 来源:发表于2016-06-28 17:13 被阅读0次

    工作流

    你的本地仓库由 git 维护的三棵“树”组成。第一个是你的 工作目录,它持有实际文件;第二个是 暂存区(Index),它像个缓存区域,临时保存你的改动;最后是 HEAD,指向你最近一次提交后的结果。

    # 将工作区的修改提交到 Stage
    git add *
    git add <filename>
    
    # 将暂存区的内容提交到 HEAD
    git commit -m '代码提交信息'
    
    # 推到远程仓库
    git push
    

    配置工具

    git config --global user.name "[name]"
    

    对你的commit操作设置关联的用户名。

    git config --global user.email "[email address]"
    

    对你的commit操作设置关联的邮箱地址。

    创建仓库

    git init [project-name]
    

    创建一个本地的仓库,并设置名字。

    git clone [url]
    

    下载一个项目以及它所有的版本历史。

    更新

    git pull
    

    更新本地仓库至最新改动。

    查阅历史

    git log
    

    列出当前分支的版本历史。

    git log --follow [file]
    

    列出文件的版本历史,包括重命名。

    更改

    git status
    

    列出所有新建或者更改的文件,这些文件需要被commit。

    git diff [path]
    

    展示那些没有暂存文件的差异。

    git diff [commit id] [path]
    

    展示指定文件的某个版本与当前版本的差异。

    git diff [commit id] [commit id] [path]
    

    展示指定文件的两个版本的差异。

    git diff --staged [path]
    

    展示那些已经暂存的文件的差异。

    撤销提交

    git reset [commit id]
    

    撤销所有指定版本后的提交,将文件移除暂存区,在本地保存更改。

    git checkout -- <filename>
    

    使用HEAD中的最新内容替换掉你工作目录中的文件,已添加到Stage中的改动,以及新文件,都不受影响。

    git reset --hard [commit id]
    

    放弃所有更改并回到某个指定的版本。

    注意:这里的commit为版本号,可以通过 git log/relog 查询。

    分支

    分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”。在其他分支上进行开发,完成后再将它们合并到主分支上。

    git branch
    

    列出当前仓库中所有的本地分支。

    git branch [branch-name]
    

    建立一个新分支。

    git checkout [branch-name]
    

    切换到一个特定的分支上并更新工作目录。

    git merge [branch-name]
    

    合并特定分支的历史到当前分支。

    git branch -d [branch-name]
    

    删除特定的分支。

    停止追踪

    文本文件.gitignore可以防止一些特定的文件进入到版本控制中

    git ls-files --other --ignored --exclude-standard
    

    列出所有项目中忽略的文件

    保存临时更改

    暂存一些未完成的更改。

    git stash
    

    临时存储所有修改的已跟踪文件。

    git stash pop
    

    重新存储所有最近被stash的文件。

    git stash list
    

    列出所有被stash的更改。

    git stash drop
    

    放弃所有最近stash的更改。

    代码冲突

    <<<<<<< HEAD
    nine
    =======
    eight
    >>>>>>> branch-a
    

    这里的冲突区块由<<<开始>>>结束,===用于分隔两个冲突的版本。这里手动修改完后就可以add,commit,push了。


    参考文档:Using GitGit简易指南详细的Git教程通俗的Git教程

    相关文章

      网友评论

        本文标题:Git 备忘录

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