Git dostu elektronik tablo formatı? [kapalı]


35

Proje dokümantasyon sürecimizi Google Dokümanlar'dan bir dizi kendi kendine barındırılan Git havuzuna taşımaya çalışıyoruz.

Metin belgeleri Git dostudur, genellikle herhangi bir fantezi biçimlendirmeye ihtiyaç duymadığımız için, LaTeX'i karmaşık durumlar için gömmek için bir seçenekle her şeyi, örneğin çoklu bağlantı sistemine dönüştürürüz .

Ancak elektronik tablolar oldukça farklı bir hikaye… Versiyon kontrol sistemlerine uygun (ve tercihen Markdown kadar insan tarafından okunabilen) bir elektronik tablo formatı var mı?

"Friendly format": Git formatla iyi çalışır ( XML ile yazmaz ) ve insan tarafından okunabilen farklar üretir ( harici araçları içeren ekstra konfigürasyon tamamdır).

Açıkçası, Markdown tatları bir kişinin statik tablolar oluşturmasına izin verir, ancak SUM()etc gibi şeyleri kullanabilmek isterdim ... (CSV'nin de aynı problemi olduğuna dikkat edin.) Güzel.

Güncelleme: Sadece Linux dostu cevaplar lütfen. MS Office olayı yok.


2
Tam olarak "git-friendly" ile ne demek istiyorsun? Git'i çok kullanmamıştım, ancak ikilik dosyaları gayet iyi kullanıyor ve herhangi bir metin dosyası gibi versiyonlanıp etiketlenebiliyorlar. Sadece farklı olamazlar, ancak bu gerekli olmayabilir.
Thomas Owens

Dostça: Farklılığı görebilir ve neyin değiştiğini kolayca anlayabilirim. Bunu yansıtacak şekilde soru güncellendi. BTW, AFAIR, git, uygun şekilde konfigüre edildiklerinde, bazı ikili formatlar için farklılıklar gösterebilir (elbette harici araçlar yardımıyla).
Alexander Gladysh,

Kimsenin size bunu sormadığına inanamıyorum ama elektronik tabloları neden proje deposunda saklamanız gerekiyor? elektronik tablolar ne için? genellikle onlara farklı bir yerde ihtiyacın olacak kadar karmaşıktırlar ve genellikle iş adamları tarafından kullanılırlar ...
Rudolf Olah

2
Bu soru konu dışı gibi görünüyor çünkü programlama ile ilgili değil.

Düzenli farklara uygun tamamen yeni bir format bulmaya veya oluşturmaya çalışmanın bir alternatifi, normal elektronik tabloları dağıtmak ve metin çıktısı üretmek için bir araç bulmak veya oluşturmaktır. Açık kaynak kodlu ExcelCompare yazılımının Excel, OpenDocument vb. İçin yaptığı şey budur. Ve bu soruyu görüntülemenin bir yazılım geliştirme soru-cevap sitesi için bile uygundur :) Sürüm kontrolüne bakın - İki elektronik tabloyu nasıl bölerim? - Yığın Taşması ve yazılımın kendisi na-ka-na / ExcelCompare
nealmcb

Yanıtlar:


12

Ayrıca düz xml olan libreOffice / open-office-elektronik tablo-zip-xml-fileformat "* .fods" komutunu da kullanabilirsiniz. @glenatron un yorumu da bu formata uygulanır.

"* .Ods" standart açık elektronik tablo formatı xml sıkıştırılmış ve git için çok uygun değil (@ Egryan / @ emuddudley cevabına benzer).


XML'den kaçınmak istiyorum. Bunu yansıtacak şekilde soru güncellendi.
Alexander Gladysh

2
1. LibreOffice gerçekten de Linux üzerinde çalışıyor. 2. Hayır, XML MS saçmalığı değildir . Bununla birlikte, XML ve Git birlikte iyi çalışmaz (yukarıdaki @ glenatron'un yorumuna bakın).
Alexander Gladysh

3
@LazyBadger: DiffDog: Linux desteği yok, kapalı kaynak, 500 $ / kullanıcı. Üzgünüm ama geçeceğim.
Alexander Gladysh

2
@AlexanderGladysh - Meld, xmldiff veya İki XML dosyasını nasıl ayırt edebilirim? SU
Tembel Porsuk'ta

1
@LazyBadger: 3 yollu birleştirme işleminin farklılık göstermekten daha önemli olduğunu unutmayın. (Ancak Google, XML için 3 yönlü birleştirme araçları için uygun Linux komut satırı bulur.) Bunları LibreOffice elektronik tablolarına karşı deneyeceğim, teşekkürler.
Alexander Gladysh

7

Bu ihtiyaçlarınızı karşılamayabilir, ama başkalarının gereksinimlerine uygun olabilir. Emacs için Org-mode, Org-mode'un table.elözel geliştirmeleri ile birlikte elektronik tablolar için hepsi düz metin olarak son derece sağlam bir çözüm sunar. Daha fazla bilgi (bu sitenin kapsamından çok daha fazlası) Org-mode'un web sitesinde ve el kitabında , özellikle de elektronik çizelgesinde öğreticiden edinilebilir .

görüntü tanımını buraya girin


4

Peki ya pyspread ? Güçlü ve güzel bir GUI ile birlikte geliyor.

Göre İlk Adımlar sayfa :

Pys dosya formatı 0.2.0 sürümünde değişmiştir. Şimdi aşağıdaki yapıya sahip bir bzip2-ed Metin dosyasıdır:

[Pyspread kaydet dosya sürümü]

0.1

[Şekil]

1000 100 3

[Kafes]

7 22 0 'Testcode1'

8 9 0 'Testcode2'

[Öznitellikler]

[] [] [] [] [(0, 0)] 0 'textfont' u'URW Chancery L '

[] [] [] [] [(0, 0)] 0 'puanla' 20

[Row_heights]

0 0 56.0

7 0 25.0

[Col_widths]

0 0 80,0

[Makrolar]

Makro metni

Bzip2-ed olması yardımcı olmuyor ancak en azından oldukça okunaklı bir metne erişebiliyorsunuz.

Lisans GPLv3'tür.


4

CSV (Virgülle Ayrılmış Değerler)

Sadece verilerle çalışıyorsanız, muhtemelen en basit ve en çok desteklenen format budur.

Sürümler arasında farklılık göstermek istiyorsanız hayatı kolaylaştırmalı.

Oh, ve Google Dokümanlar CSV içe aktarma / dışa aktarmayı tam olarak destekliyor.

Güncelleştirme:

Ardından, dışa aktarmadaki formülleri düzenlemek ve içe aktarma işlemini tersine çevirmek için bir Google Apps Komut Dosyası yazmanız yeterlidir. Aradığınız ustalık kullanmanız gerekecek çünkü aradığınız format mevcut değil.


2
Ne yazık ki, CSV SUM()vb gibi formül şeyleri desteklemiyor
Alexander Gladysh

Soruyu açıkça söylemek için soruyu güncelledim.
Alexander Gladysh

1
@AlexanderGladysh, aslında CSV'nin doğru formatı seçerseniz denklemleri çok iyi idare edebileceğini söyleyebilirim, sorun şu ki bir okuyucuyu bu denklemleri ayrıştırıp değerlendirecek şekilde yapılandırmanız gerekecek.
zzzzBov

Emacs csv-mode güzel bir araç olabilir. Ayrıca hafif csv düzenleme için Gnumerics düşünün. Bunları yoğun olarak denemek için henüz var.
Brady Trainor,

1

Microsoft Office 2007 ve daha yüksek varsayılanların kaydedilirken uygun bir xml biçiminde olduğunu biliyorum. Bu Git için dost olmalı. Açık ofis, daha açık kaynak kodlu bir çözüm kullanmak istiyorsanız, xml biçiminde de kaydeder. Bir XML bir metin formatı olduğundan, git oldukça iyi idare edebilmelidir

Google Dokümanlar'dan taşıdığınızdan, indirebilirsiniz, xml tabanlı açık belgeler vardır.

Düzenle

Microsoft / XML olmayan bir çözüm istediğiniz için her zaman kaydedebileceğiniz açık ofisinizde bir CSV vardır, ancak bu formata kaydederek ne kadar işlevsellik kaybedeceğinizi bilmiyorum.


3
Git'in XML formatlarına katılmama veya belgenin formatıyla uyumlu olmayan şekilde birleştirme ile ilgili bazı sorunlar gördüm. Bunun XML'e özgü bir birleştirme aracı kullanarak çözülebileceğine inanıyorum, ancak kullanımda görmedim.
glenatron

4
Excel Çalışma Kitabı (* .xlsx) formatı, bir ZIP kabındaki XML dosyaları koleksiyonudur. Tek bir XML dosyasına kaydetmek için XML Spreadsheet 2003'ü (* .xml) seçebilirsiniz, ancak yalnızca Excel'in özelliklerinin bir alt kümesini destekler.
M. Dudley

1
XML, yukarıdaki @glenatron yorumuna göre yapmaz (Ben de böyle sorunlar yaşadım). Ayrıca: XML farkları insan tarafından okunabilen IMO değildir. Bunu yansıtacak şekilde soru güncellendi.
Alexander Gladysh,

CSV herhangi bir formül maddesini desteklemiyor. O zaman Markdown'ın masalarını kullanabilirim. Bunu yansıtacak şekilde soru güncellendi.
Alexander Gladysh

0

İstediğin tam olarak bu olmayabilir, libre ofisinin dış dosyaya başvurmana izin verdiğine inanıyorum. Veritabanına benzeyen bir e-tablonuz olabilir ve arayüzünüz olacak statik bir libre dosyasına sahip olabilirsiniz. Onları geri çağırmazsanız sürümlü dosyalarınızdaki kolay erişim toplamını kaybedersiniz, ancak işe yarar.

Bununla ilgili oldukça büyük bir konu, bunun tek yönlü olmasıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.