Я кодирую программу и в то же время, я хочу совместно использовать ее со своими элементами группы с помощью человечности. У них нет Ubuntu Одной учетной записью и что я делаю должен опубликовать файл, и мои друзья просто получают ссылку и файл.
Но, странно или нет, каждый раз, когда я загружаю новую версию этого файла (я добавляю больше кода и сохраняю его), используемая ссылка, кажется, "устарела", и я должен опубликовать тот же файл снова и получить новую ссылку каждый раз, когда я изменяю тот же файл.
Разве не могло быть возможно сохранить новую версию Вашего файла, и та же ссылка просто "указывает" на более новую версию?
От Chipaca (Ubuntu Один dev) отвечают на подобный вопрос:
Однако при редактировании его с редактором, который переименовывает файл, создает новый, копирует содержание в и затем удаляет оригинал (как большинство редакторов делает), и syncdaemon работает, это будет видеть переименовывание и удаление, и общедоступный URL будет относиться сначала к переименованному файлу и затем исчезнет.
Это - неудачный побочный эффект способа, которым мы делаем общедоступные файлы и что-то, что мы должны изменить, но прямо сейчас это - каково это.
В основном, когда Вы сохранили файл с большинством редакторов, Вы на самом деле заменяете исходный файл измененной версией. Вы видите для себя с помощью stat
команда:
hello@world:~$ stat -c %i hello.txt
4971
Команда stat -c %i
возвращает inode количество файла.
Выполнение той же самой команды снова после того, как я отредактировал hello.txt
в gedit
возвращает другое inode число:
hello@world:~$ stat -c %i hello.txt
3794
Если я просто добавляю строку текста в конец использования файла >>
файл просто изменяется на месте, не перезаписывается:
hello@world:~$ echo "The End." >> hello.txt
hello@world:~$ stat -c %i hello.txt
3794
Я нашел немного неловкий способ обойти это ограничение в Ubuntu Один:
Создайте копию опубликованного файла:
cp hello.txt hello-copy.txt
Сделайте всю свою работу над копией вместо опубликованного файла:
gedit hello-copy.txt
Когда Вы хотите обновить опубликованный файл, выполнить следующую команду:
cat hello-copy.txt > hello.txt