停止git上传_git 取消对指定的文件跟踪

使用git的时候,有些文件比如图片或者编译产生的文件,是没有必要纳入版本库。有时候会无意的把这些不需要跟踪的文件,纳入了版本库。这个时候就需要把他们移除版本库。防止跟踪的文件过多。

git 删除(忽略)对跟踪的文件

创建一个测试的环境

echo "file.txt" > file.txt

echo "tmp.tmp" > tmp.tmp

echo ".gitignore" > .gitignore

git init .

git add .

git commit -m 'git测试,取消跟踪跟踪的文件'

git rm --cached filename 对提交到版本库的文件停止跟踪

这里假设git不应该对文件tmp.tmp进行跟踪,进行下面的操作

git rm --cached tmp.tmp

# rm 'tmp.tmp' (输出的结果)

# 查看一下当前的状态

git status

#On branch master

#Changes to be committed:

# (use "git reset HEAD ..." to unstage)

#

# deleted: tmp.tmp

#

#Untracked files:

# (use "git add ..." to include in what will be committed)

#

# tmp.tmp

可以看到从版本库中删除了文件 tmp.tmp,删除的是版本库中文件,工作区的文件是没有被删除的。同时 没有被跟踪的文件是 tmp.tmp 。这个时候可以把不需要跟踪的文件写入 .gitignore 中

echo "*.tmp" >> .gitignore

# 看下现在的状态

#git status

#On branch master

#Changes to be committed:

# (use "git reset HEAD ..." to unstage)

#

# deleted: tmp.tmp

可以看到,已经不再跟踪 tmp.tmp 文件了。

最后记得提交这次更改

git commit -m 'git删除了不应该被跟踪的文件 tmp.tmp'

### 最后看下状态

git status

#On branch master

#nothing to commit, working tree clean

了解更多

暂时性的忽略一些文件 git update-index --assume-unchanged file.txt, 意思是这个可以暂时性的忽略文件 file.txt的变动。

# 修改一下这个文件

echo "假装忽略一下这个文件" >> file.txt

# git 已经发现了这个文件的变化

git status

#On branch master

#Changes not staged for commit:

# (use "git add ..." to update what will be committed)

# (use "git checkout -- ..." to discard changes in working directory)

#

# modified: file.txt

#

#no changes added to commit (use "git add" and/or "git commit -a")

# 假装忽略这个文件

git update-index --assume-unchanged file.txt

# 可以看到,已经停止了对临时性 file.txt 的跟踪

git status

#On branch master

#nothing to commit, working tree clean

# 删除假装不更新

git update-index --no-assume-unchanged file.txt

git status

#On branch master

#Changes not staged for commit:

# (use "git add ..." to update what will be committed)

# (use "git checkout -- ..." to discard changes in working directory)

#

# modified: file.txt

可以看到文件已经被重新进行了跟踪。好的习惯应该,一开始就把不需要跟踪的文件,写入到 .gitignore中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值