git pull - Already Up To Date



我正在使用GIT在桌面计算机和服务器之间同步源代码文件。

我在服务器上有一个git存储库,它是我用git init --bare创建的。然后,我使用git init在桌面上创建了一个存储库,并使用git add ... etc...添加了所有代码文件。

然后,我使用以下命令将服务器repo添加为"原点"(不管这意味着什么-原点和主标签之间有什么区别?这些标签看起来像是两个随机或任意的标签。):git remote add origin ssh://put the server url here (192.168.0.1 blaa blaa etc)

我在桌面端运行了git push origin master。这将代码发送到服务器上的git存储库。

但是,我需要在服务器上编译我的代码。为了做到这一点,我将git存储库克隆到服务器上的一个相邻目录中。(服务器端:)(在与git存储库的父目录相同的目录中创建新目录,cd到此新目录)git clone ../gitrespository.git(用我的代码创建一个新的子目录)

然后我可以cd到这个子目录进行编译和运行。

然而,我现在已经对我的代码进行了一些更改。我从桌面上的git跟踪中删除了一个文件,然后物理地重命名了这个文件。我还在桌面上的git跟踪中添加了一个新文件。我使用git push origin master将代码推送到服务器。

然而,现在当我在服务器端运行git pull时,在克隆的存储库中,我只收到一条消息,上面写着"Already Up To Date"。新文件没有显示,我删除的旧文件仍然存在。。。我做错了什么?

最后,有没有更好的方法将我的代码上传到服务器。我使用rsync只是复制它。Git的优点是它可以跟踪更改(尽管我还没有学会如何做到这一点),并允许多个用户处理代码。这可能意味着如果我使用git存储库,如果我使用多台计算机(移动中的台式机/笔记本电脑),我就不太可能犯严重错误。然而,缺点是rsync要"快"得多。我运行1个命令(作为shell脚本以减少键入)来上传代码,然后在服务器上运行另一个命令进行编译。使用Git,我必须运行一个命令来上传,然后运行另一个命令进行克隆,然后再运行另一条命令进行编译。我想这只是一个多命令,但将代码以我无法在服务器上使用的格式存储在存储库中似乎仍然有点"奇怪"(不确定Git存储库是如何格式化的,但据我所见,它们不是人类可读的),然后将此代码克隆到另一个目录中,在那里它是我可以编译的格式。。。

在运行git push origin master之前,必须运行另一个命令。运行前运行git commit -m 'some message here'

这意味着我必须运行两倍于rsync的命令,这有点不方便。。。

最新更新