題:
OS X Mavericks上的CVS
Andrew Jaffe
2013-11-04 14:37:14 UTC
view on stackexchange narkive permalink

顯然,蘋果已經在OS X 10.9 Mavericks devtools下刪除了CVS(是的,它真的消失了)。對於剛開始使用的人來說, CVS是並發版本系統,這是一種用於使不同機器和用戶(開發人員)之間的文件保持最新狀態的工具。它(不,我無法將其更改為使用SVN,更不用說git了。)

在哪裡可以獲得在OS X Mavericks下工作的版本的最佳位置?

您是否檢查它是否仍在`/ usr / bin / cvs`中?
是的,它真的消失了。
六 答案:
Andrew Jaffe
2013-11-04 17:07:19 UTC
view on stackexchange narkive permalink

使用unix-ish軟件包管理器顯然是可行的方法。我已經從 fink Macports移到了 homebrew,其中有一個用於cvs的配方:

  brew install cvs  

為實現歷史完整性,您以前不得不使用(略難找到) cvs的食譜 brew install homebrew / dupes / cvs

僅需進行極少的測試,便可以正常工作。

我嘗試了稍微短一點的命令“ brew install cvs”(OS 10.9,Homebrew 0.9.5);它安裝了CVS 1.12.13,看起來很正常。
是的,nknight的命令是正確的命令。該命令已更改,因為CVS公式[已在2013年11月從homebrew-dupes移至Homebrew核心[https://github.com/Homebrew/homebrew-dupes/pull/247)。
mmmmmm
2013-11-04 16:31:52 UTC
view on stackexchange narkive permalink

大多數程序最簡單的方法是使用Macports,Homebrew或Fink之類的軟件包管理器進行安裝。搬運工將解決有關將代碼移植到OSX的問題,因此應簡單如下(對於 Macports

  1. 安裝macports,下載.pkg文件並運行它
  2. 安裝Xcode及其命令行工具
  3. / opt / local / bin 添加到您的路徑中-安裝程序會嘗試為此您可能只需要檢查
  4. 安裝端口 sudo port install cvs
  5. 使用完整路徑 / opt / local運行cvs / bin / cvs 或使用您的PATH
  6. ol>
OliverS
2013-11-04 20:10:22 UTC
view on stackexchange narkive permalink

edit:如評論中所述,git需要一個工作的cvs客戶端,這使此方法只是一個很好的互操作層,但不能解決缺少csv客戶端的問題。

另一種選擇是使用 git作為cvs客戶端並直接推送到CVS服務器。

根據您的需求,這可能是足夠的cvs互操作+在本地使用git的優勢。

我不知道你能做到這一點。很酷!
我試過了,但是`git-cvsimport`似乎需要CVS客戶端,所以這是一個雞和雞蛋的問題。
感謝@DavidMoles。我更改了答案,以確保每個人都知道此限制。我以前沒有嘗試過。
Arthur Barrett
2014-06-30 11:01:19 UTC
view on stackexchange narkive permalink

CVSNT在Mac OS X 10.9上運行,並支持資源等的HQX編碼。10.9的Beta版在此處可用: http://march-hare.com/cvspro/#downcvsnt

如果您以前使用過Mac CVS X,則此(CVSNT)是以前包含的“命令行”。

歡迎來到該網站。請查看http://apple.stackexchange.com/help/behavior,尤其是有關自我推廣的部分。
我很確定我的評論與提出的問題有關,並且我與該產品的隸屬關係眾所周知並且已明確標識(例如:我的頭像是公司徽標),並且我是[並發版本系統]項目的成員](http://savannah.nongnu.org/project/memberlist.php?group=cvs)。
BjornW
2016-01-12 16:34:48 UTC
view on stackexchange narkive permalink

我也遇到了同樣的問題,Macports,Fink等的一個大問題是它們引入了許多其他缺陷,如果您只需要一個像cvs這樣的工具,那麼它們就會造成混亂並且不必要。在我的情況下,嘗試使用macports安裝它會導致彈出窗口,要求我安裝Java編譯器(?!),還必須構建許多其他數據包,因此我迅速撤出了:)

您需要的是cvs,只需自己構建即可輕鬆,更乾淨,並且生成的二進製文件與計算機上所有現有的lib等集成在一起。您確實需要安裝Xcode及其命令行工具,但是如果您需要cvs,我確定您已經安裝了它。

從以下位置獲取cvs源代碼:

http://download.savannah.gnu.org/releases/cvs/source/stable/1.11.23/

將其解壓縮到一個文件夾中,輸入該文件夾並運行./configure

然後(不幸的是)您需要(在src /和lib /中)編輯文件,以將其getline函數重命名為例如getlineX,因為getline與libc函數衝突。我可以對此做一個補丁,然後放到我猜的某個地方。

在此之後,執行“ make”,您將在src / cvs中獲得一個二進製文件,您可以將其放入〜/ bin文件夾或任何地方,並確保您的PATH指向那裡。

>我可以對此做一個補丁,放在我猜的某個地方。那就太好了,值得提交。(對我來說並不緊急,我通常會對Homebrew感到好運。)
user2067021
2017-01-31 08:04:34 UTC
view on stackexchange narkive permalink

緊跟 BjornW的答案並提供補丁。

從以下位置下載和取消存檔源之後: http://download.savannah.gnu.org/releases/cvs/source/stable/1.11.23/

將以下補丁複製到某個文件,例如 cvs-1.11.23.patch ,然後使用以下補丁應用該補丁:

patch -d cvs-1.11.23 -p1 < cvs-1.11.23.patch

然後按照cvs-1.11.23 README 文件說明進行構建:

  cd cvs-1.11.23
。/配置
使
進行安裝
 

這是補丁:

  diff -r -u cvs-1.11.23 / lib / getline.c cvs-1.11.23-osx / lib / getline.c
-cvs-1.11.23 / lib / getline.c 2005-04-05 06:46:05.000000000 +1000
+++ cvs-1.11.23-osx / lib / getline.c 2017-01-31 12:04:19.000000000 +1100
@@ -154,13 +154,10 @@
   返回ret
 }

-int
-getline(lineptr,n,流)
-char ** lineptr;
-size_t * n;
-FILE *流;
+ ssize_t
+ getline(char **限制lineptr,size_t *限制linecapp,FILE *限制流)
 {
-返回getstr(lineptr,n,流,'\ n',0,GETLINE_NO_LIMIT);
+ return(ssize_t)getstr(lineptr,linecapp,流,'\ n',0,GETLINE_NO_LIMIT);
 }

 整型
差異-r -u cvs-1.11.23 / lib / getline.h cvs-1.11.23-osx / lib / getline.h
-cvs-1.11.23 / lib / getline.h 2005-04-05 06:46:05.000000000 +1000
+++ cvs-1.11.23-osx / lib / getline.h 2017-01-31 12:03:21.000000000 +1100
@@ -11,8 +11,8 @@

 #定義GETLINE_NO_LIMIT -1

-int
-getline __PROTO((char ** _ lineptr,size_t * _n,FILE * _stream));
+ ssize_t
+ getline(char **限制linep,size_t *限制linecapp,FILE *限制流);
 整型
   getline_safe __PROTO((char ** _ lineptr,size_t * _n,FILE * _stream,
                      int limit));
 


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...