git文件管理

作者: 缘来是你ylh | 来源:发表于2019-03-19 06:50 被阅读6次

    clone或者init工程后,工程目录下都有一个.git的版本库.他是隐藏的,ls -ah才能查看

    stage是暂存区

    git.png

    0.git add 添加修改的文件

    git add file  添加文件file到暂存区
    
    git add .     添加全部改动的文件到暂存区
    

    1.git commit 提交文件到本地分支

    git commit -m '提交说明'
    

    2.git status 查看工作区的文件状态是否被改动

    3.git diff 查看具体的改动内容

    git diff HEAD — readme.txt
    
    查看工作区文件和版本库最新版本的区别
    

    4.git log 查看从近到远的提交日志

    git log —pretty=oneline   美化显示日志
    
    eg:
    
    $ git log --pretty=oneline 
    
    3628164fb26d48395383f8f31179f24e0882e1e0 append GPL 
    
    ea34578d5496d7dd233c827ed32a8cd576c5ee85 add distributed
    
    cb926e7ea50ad11b8f9e909c05226233bf755030 wrote a readme file 
    
    你看到的一大串类似3628164...882e1e0的是commit id(版本号),和SVN不一样,Git的commit id不是1,2,3……递增的数字,而是一个SHA1计算出来的一个非常大的数字,用十六进制表示,而且你看到的commit id和我的肯定不一样,以你自己的为准。
    
    

    5.git reset 回退

    git reset --hard HEAD^ 回退到上一个版本
    
    git reset —hard commit id  回退到某一个版本 commit id只要写前几个字符,git会自动查找
    
    eg: git reset —hard ea34578 
    Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
    
    

    6.git reflog 记录你的每一次命令

    Git提供的后悔药,时光穿梭机
    ea34578 HEAD@{0}: reset: moving to HEAD^ 
    
    3628164 HEAD@{1}: commit: append GPL 
    
    ea34578 HEAD@{2}: commit: add distributed 
    
    cb926e7 HEAD@{3}: commit (initial): wrote a readme file 
    
    有了这个我们就能拿到历史的commit id,来回穿梭
    
    

    7.git checkout --filename 丢弃工作区的修改

    这里省略 --同样可以达到丢弃工作区修改的目的但是会带来问题
    
    -- double dash,是bash的内置命令,用来隔离”树”和”命令”,加了--就认为后面的是文件路径而不是命令选项
    
    git checkout还有一个作用就是切换分支,假设有个该死的文件叫master,你做修改后又想丢弃,你使用了git checkout master(这里省略了--),这个时候你就悲催了,git执行的是切换分支而不是丢弃修改
    
    所以丢弃文件建议不要省略--这是个好习惯
    
    

    8.git rm 删除文件

    git rm filename 然后commit到分支,直接在文件管理器删除不提交是无效的哦!除非add添加进暂存区
    
    如果是误删直接checkout就行了
    
    

    9.推拉代码push pull

    git push 将本地分支代码推送到远端分支
    
    git pull 将远端分支代码拉倒本地
    
    

    相关文章

      网友评论

        本文标题:git文件管理

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