Git文件操作

Git文件操作

一、删除文件
    保存进度: git stash
    恢复进度: git stash apply
rm *.txt只是删除了工作区的文件,暂存区和版本库的还在。
法一:
    git rm a.txt b.txt c.txt
    git commit -m "delete trash files"
当然,文件只是在版本库的最新提交中被删除了,历史提交中还有捏:
    git ls-files --with-tree=HEAD^ #查看历史文件目录树
    git cat-file -p HEAD^:a.txt  #查看删除文件的内容
法二:
    git reset --hard HEAD^    #丢弃法一中的提交
    git stash apply -q      #恢复保存的进度 -q使命令进入安静模式
    rm *.txt
    git status -s   #状态显示本地删除了文件,暂存区的还在
    git add -u     #将被版本库追踪的本地文件的变更全部记录到暂存区中。
    git status -s   #工作区删除的文件被标记为下次提交时删除
    git commit -m "delete trash files(git add -u)"
 
二、恢复删除的文件
    git cat-file -p HEAD~1:a.txt > a.txt
   git show HEAD~1:a.txt > a.txt
   git checkout HEAD~1 -- a.txt
then git add -A      #将工作区中的所有改动及新增文件添加到暂存区
    git status -s
    git commit -m "restore file:a.txt"
 
选择性添加文件到版本库中:git add -i 进入交互式界面
添加里程碑: git tag -m "tag" hello_1.0     #里程碑是人为的对提交进行的命名
查看现在的版本号: git describe
 
三、移动文件
    git mv welcome.txt WELCOME   #文件改名,相当于rm + add
    git commit -m "rename file's name"  #提交改名操作
 
 
四、文件忽略
    $ cat > .gitignore << EOF  #将要忽略的文件写入.*文件的单独行中,可忽略自己
    > hello
    > *.o
    > *.h
    > EOF
    $ git add .gitignore #若不希望添加到版本库中且文件不带来干扰,可忽略自己
    $ git commit -m "ignore object files"
    忽略文件(如上面的.gitignore)的作用范围是其所处的目录及其子目录,文件被加到版本库后,就不再受忽略文件的影响了。
.gitignore设置的文件忽略是共享式的。另有针对具体版本库的独享式忽略(.git/info/exclude),全局的独享式忽略(通过git
的配置变量core.excludesfile指定一个忽略文件)。
    eg: 设置一个全局的独享文件:
        git config --global core.excludesfile /home/kai/.gitignore
        git config core.excludesfile
五、文件归档:
    基于最新提交建立归档文件: git archive -o latest.zip HEAD
    只将目录src和doc建立到归档partial.tar中:git archive -o partial.tar HEAD src doc
    如果希望在归档是忽略文件或目录,可为相应文件或目录建立export-ignore属性实现。
查看提交次数:
        git rev-list HEAD | wc -l


 
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值