我对服务器的拉动有点困惑,因为我有一个.gitignore,设置为忽略用户生成的文件。基本上我是开发和推送到github,然后使用pull进行部署,但我一直在删除用户生成的内容。
.gitignore看起来像这样:
audio/*/*/*.mp3
audio/*/*/*.wav
audio/*/*/*.ogg
videos/*/*/*.mp4
videos/*/*/*.mov
videos/*/*/*.mpeg
images/*/*/*.jpg
images/*/*/*.jpeg
images/*/*/*.png
images/*/*/*.gif
images/*/*/*.bmp
images/*/*/*/*.jpg
images/*/*/*/*.jpeg
images/*/*/*/*.png
images/*/*/*/*.gif
images/*/*/*/*.bmp
我对git并不是特别了解,所以我知道我做错了什么。
我做错了什么?
答案 0 :(得分:3)
.gitignore用于在您尝试提交文件时忽略文件。从存储库中提取时不会看到它。
答案 1 :(得分:0)
我没有观察到你所说的喋喋不休的行为:
环境1:
$ mkdir test
$ cd test
$ git init .
Initialized empty Git repository in /*****/test/.git/
$ cat > .gitignore <<'EOF'
> audio/*/*/*.mp3
> audio/*/*/*.wav
> audio/*/*/*.ogg
>
> videos/*/*/*.mp4
> videos/*/*/*.mov
> videos/*/*/*.mpeg
>
> images/*/*/*.jpg
> images/*/*/*.jpeg
> images/*/*/*.png
> images/*/*/*.gif
> images/*/*/*.bmp
>
> images/*/*/*/*.jpg
> images/*/*/*/*.jpeg
> images/*/*/*/*.png
> images/*/*/*/*.gif
> images/*/*/*/*.bmp
> EOF
$ touch test.txt
$ mkdir -p audio/one/two/
$ touch audio/one/two/three.mp3
$ touch audio/one/two/three.txt
$ git add -A :/
$ git commit -m "Initial commit"
3 files changed, 19 insertions(+)
create mode 100644 .gitignore
create mode 100644 audio/one/two/three.txt
create mode 100644 test.txt
$ git remote add origin https://***********@bitbucket.org/***********/testrepo.git
$ git push -u origin --all
环境2:
$ git clone https://***********@bitbucket.org/***********/testrepo.git
$ cd testrepo
$ touch test2.txt
$ git add -A :/
$ git commit -m "Commit two."
$ git push
环境1:
$ touch audio/one/two/three.wav
$ git pull
$ ls -l audio/one/two/
total 0
-rw-r--r-- 1 *********** staff 0 Sep 25 11:37 three.mp3
-rw-r--r-- 1 *********** staff 0 Sep 25 11:37 three.txt
-rw-r--r-- 1 *********** staff 0 Sep 25 11:57 three.wav
文件仍在那里。