imac2018-3d / StoneEdge

The game's main repo.
MIT License
0 stars 1 forks source link

Everyone must be able to use the Asset Pipeline script `lftp_assets.sh` #7

Closed yoanlcq closed 6 years ago

yoanlcq commented 6 years ago

This one is important too: otherwise you won't be able to add sounds, 3D models etc to the project.

Quick refresher : We DO NOT use Git to store audio files, 3D models and images, because they are too heavy. Instead, we use an FTP (File Transfer Protocol) server, and I've written an lftp_assets.sh BASH script that automagically synchronises all assets with the server in a single line.
For you to use this, you'll need a BASH shell and the LFTP utility.
The password is written in our Facebook group. DO NOT copy it here or on Gitter.

I had written a guide in our Drive, under Miscellaneous -> LFTP Assets Guide. If you're feeling lazy, here's a direct link.

Once you were able to pull + push assets using this script and have no more questions, please check the box next to your name in the list below (you should be able to. If not, leave a comment and I'll do it).

N.B if you're stuck or don't really know or understand what to do, do not stay silent ! do tell me so I can help you. This is very important.

datross commented 6 years ago

Done for me.

...is it the right way to say it? I cannot find how to check the '@datross' box. Only the author can edit the initial message?

yoanlcq commented 6 years ago

@datross I feared this was the case... Quite inconvenient :( I'll check your box and investigate this.

Hellowizz commented 6 years ago

J'ai fait ce que tu as dis pour windows (je crois) Mais je comprend pas ce que c'est et à quoi ça sert, tu pourrais expliquer un peu plus, histoire que je sache si j'ai bien fait please ?

yoanlcq commented 6 years ago

@Hellowizz Normalement y'a tout qui est expliqué dans le guide et la section appropriée du CDCT (au pire Ctrl + F), du coup je t'invite à relire les deux parce que j'ai la flemme de tout réécrire une énième fois ici ^^
Tu sais que tu as réussi si tu peux ouvrir Git Bash et que, si tu tapes lftp, ça fait pas commande introuvable. Si t'as besoin d'aide go me MP sur Messenger ^^

firegreen commented 6 years ago

I can't enter the password :'(

open: GetPass() failed -- assume anonymous login
mirror: Login failed: 530 Login authentication failed
yoanlcq commented 6 years ago

I assume you're on Windows - all sorts of crazy stuff happens with LFTP on Windows, the situation is very bad; Hélo and Coralie also had problems, each in a specific and hard to solve way.
This is gonna be tough. Try the following, if it works I'll add it to the guide.

Windows

  1. Double-click on bash.exe from the downloaded LFTP folder;
  2. cd Absolute/Path/To/StoneEdge/Assets
  3. ./lftp_assets.sh login

Normally, its the bash.exe from LFTP that solves everything. let me know if it works for you @firegreen ^^

firegreen commented 6 years ago

It works Well play 👍

LancelThaledric commented 6 years ago

It seems to work for me, but take care ! On windows, my Git configuration fetches files converting new lignes to windows-style (CRLF), making your lftp_assets.sh fail to run on lftp bash. I had to convert new lines to unix-style before run it (I used Notepad++). I have some warnings but it seems to work. By the way, I've a new version of your script to add to git ignore list :/

yoanlcq commented 6 years ago

By the way, I've a new version of your script to add to git ignore list :/

@LanscelThaledric Feel free to add the name of your unix-style manual copy to the .gitignore in Assets/ and push this change!
Also could you tell me which warnings you get ?

LancelThaledric commented 6 years ago

./backup_assets.sh: line 2: $'\r': command not found ./backup_assets.sh: line 3: syntax error near unexpected token$'do\r'' '/backup_assets.sh: line 3: for i infind Textures Models Sounds Music -type f; do

Do I have to rename it to not conflict with the original one ?

yoanlcq commented 6 years ago

From these errors it appears that there are still some \r left. Make sure to remove them all, there must be none left :smiling_imp:

Do I have to rename it to not conflict with the original one ?

Unless your Git also converts to Window-style when uploading (which might or might not be the case), please do. I'm fine with anything as long as the upstream one is still Unix-style.

LancelThaledric commented 6 years ago

The fact is that on windows, git commit and pushes Unix-style, but pull Windows-style (it's convenient to use, but we have guarantee that no CRLF endings will be pushed on git). The problem here is that this file is the one that we don't expect to have CRLF endings on windows (lftp seems to be an unix virtual machine). I think push Unix-style endings won't solve the problem, because git will always convert it to windows-style on pulling. I guess there is a way to fix this locally, I'll search.

yoanlcq commented 6 years ago

Note to self: Make life easier for Windows users. The current situation is a mess.
Here's what I've taken note of:

yoanlcq commented 6 years ago

Closing this because everyone appears to be fine!

yoanlcq commented 6 years ago

Ok, so today I've tested my latest commit which hopefully fixed the issues on Windows.
That is, it forces \n line endings instead of \r\n (thanks to a .gitattributes file), and I've removed the #!/usr/bin/bash shebang in relevant scripts.

So, on Window, the process definitely is :

  1. Double-click on bash.exe as distributed with LFTP; this opens a terminal window;
  2. cd to the project's Assets directory (in my case, cd /cygdrive/c/Users/Yoon/StoneEdge/Assets);
  3. Run ./lftp_assets.sh pull.

Could some of you guys please try it out on Windows with the latest changes ?

yoanlcq commented 6 years ago

Outdated by #38