хранилище не обновляется после git pull - PullRequest
2 голосов
/ 24 марта 2012

Я сделал развертывание с помощью capistrano в удаленном хранилище.

Я новичок в git.

Теперь я хочу обновить некоторые файлы и обновить мой сайт ... и т. Д.с git, потому что капистрано медленнее, если я запускаю новое развертывание.

Для файлов обновлений в удаленном репозитории я сделал следующие шаги:

git add .

git commit -a -m "changes made"

git push origin master

git pull origin master

Однако, если я вижу файлы в удаленном хранилище, изменения не были внесены :(.

на последнем шаге я получаю этот результат в консоли:

ubuntu@ubuntu:~/Desktop/project$ git pull origin master
user@ip.ip.ip.ip's password: 
From ip.ip.ip.ip:~/project
 * branch            master     -> FETCH_HEAD
Already up-to-date.

Отредактировано с шагом шага 3

после шага 3 я получаю:

git push origin master
user@ip.ip.ip.ip's password: 
Counting objects: 110, done.
Compressing objects: 100% (57/57), done.
Writing objects: 100% (71/71), 447.59 KiB, done.
Total 71 (delta 30), reused 0 (delta 0)
To user@ip.ip.ip.ip:~/project
   33b8849..769d87d  master -> master

Отредактировано со структурной папкой на удаленном сервере и capistrano deploy.rb

У меня есть 2 каталога project и project.com:

Первый - project, в этом каталоге находятся новые изменения.

и этот каталог имеет branches config description HEAD hooks info objects refs

Второй каталог project.com iМоя папка домена, внутри этого каталога у меня есть 2 каталога:

current, releases и shared

Внутри каталога релизов находится мой проект релизов, развернутый через capistrano с каталогом вроде:

20120323164859

и внутри current Iприложение my rails 3.1.

Я хочу увидеть изменения, внесенные в этот каталог.

deploy.rb

$:.unshift(File.expand_path('./lib', ENV['rvm_path'])) # Add RVM's lib directory to the load pathe
require "rvm/capistrano"                  # Load RVM's capistrano plugin.
require "bundler/capistrano"
set :rvm_ruby_string, 'ruby-1.9.2-p318@global'  
set :rvm_type, :user
set :application, "project.com"
set :user, 'user'
set :repository,  "#{user}@ip.ip.ip.ip:~/project"

set :scm, :git
set :use_sudo, false
set :keep_releases, 2
set :deploy_to, "~/#{application}"
set :deploy_via, :copy


role :web, "ip.ip.ip.ip"                          # Your HTTP server, Apache/etc
role :app, "ip.ip.ip.ip"                          # This may be the same as your `Web` server
role :db,  "ip.ip.ip.ip", :primary => true # This is where Rails migrations will run
load 'deploy/assets'

Чтоя делаю не так?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 24 марта 2012

Является ли удаленное репо реальной рабочей копией случайно?Git не будет (легко, по умолчанию) загружать и обновлять удаленную рабочую копию.Вы всегда должны нажимать на голые репозитории.

Редактировать

Итак, ваш реальный репозиторий находится в project, это пустой репозиторий, и именно там ваши толчки будутидти.Зайдите в этот каталог и выполните git log, вы увидите, что ваши изменения предполагают, что ваш источник задан правильно и т. Д.

Чтобы получить изменения в одной из рабочих копий в releases, вам необходимо:

  • развертывание с использованием надлежащих инструментов, таких как capistrano (что я предлагаю, потому что ваша структура каталогов release / current / shared является общей для rails проектов, это то, что вы делаете?)
  • зайдите в один из каталогов релизов и просто git pull origin [branchname]
0 голосов
/ 24 марта 2012

Я не понимаю твою проблему.Что вы подразумеваете под «изменения не были сделаны»?Вы только что выдвинули свои изменения и, следовательно, ничего не произойдет, когда вы потянете, у вас уже есть последний код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...