2017-01-09 2 views
0

Je travaille sur un projet Python/Django, en utilisant Git pour gérer le contrôle de version.Git-link fonctionne sur la branche master locale, ne fonctionne pas sur la version live

J'ai actuellement un problème avec une certaine incohérence entre la branche master sur ma machine locale et la branche master en direct sur le serveur ...

Je Correction d'un bug sur ma machine locale plus tôt, et a poussé la changements sur le serveur, cependant, un lien sur l'une des pages sur la version live sur le serveur ne fonctionne plus, même si elle est sur ma version locale ...

Le lien est sur: www.mysite .co.uk/costing/id/- lorsque je clique sur le lien 'Reports', j'obtiens une page d'erreur qui dit:

TemplateSyntaxError à/coûts/6108/paiement Rapport/Présentation/

tag bloc incorrect sur la ligne 87: 'date_to_display', attendu 'Elif', 'autre' ou 'endif'. Avez-vous oublié d'enregistrer ou de charger cette balise?

Mais sur ma machine locale, sur la branche master, ce lien fonctionne correctement.

Après avoir examiné le modèle où la version live se plaint du la invalid block tag, je vois qu'il est dans le bloc:

{% block content_payment_schedule %} 
    {% if not webview %} 
     <div> 
      <table> 
       <tr> 
        ... 
       </tr> 
       <tr> 
        <td> 
         <span class="project-name">{{project.project_name|upper}}</span> 
        </td> 
        <!-- Display today's date in the header --> 
        <td> {{ date_to_display }}</td> 
       </tr> 
      </table> 
     </div> 
    {% endif %} 
    ... 
{% endblock content_payment_schedule %} 

C'était quelque chose que j'avais déjà ajouté au code (à afficher la date dans l'en-tête d'un PDF généré en cliquant sur un lien), et a travaillé jusqu'à présent ...

Lorsque je navigue à: localhost: 8000/costing/id/et cliquez sur le même 'Rapports 'lien, je suis redirigé vers la page des rapports à: localhost: 8000/costing/id/payment-report/overview/(qui affiche une zone de' contenu à onglets ', avec ta bs pour différents rapports, avec l'onglet 'aperçu' sélectionné automatiquement).

de la machine locale, alors que sur la branche master, si j'essayer d'exécuter

git commit -m 'message about commit', & puis

git push origin master

Git affiche un message me disant que:

Tout en -date

git status affiche un message indiquant:

Le maître branche

Alors, pourquoi est-ce que je suis

rien à commettre, propre répertoire de travail

obtenir ce TemplateSyntaxError sur la version live, quand ma version locale fonctionne correctement, et la version sur le serveur est à jour avec ma version locale?

+0

Avez-vous vérifié si vous utilisez les mêmes fichiers de paramètres? Est-ce que les diffèrent? Êtes-vous sûr que le fichier contenant votre balise 'date_to_display' est sur le serveur? –

+0

Si la version en cours du code utilise '{{date_to_display}}', il semblerait que vous ayez déjà extrait la dernière version du code. Dans ce cas, je pense que le problème est que vous n'avez pas redémarré le serveur. – Alasdair

+0

J'ai redémarré le serveur plusieurs fois - cette variable a été ajoutée il y a plusieurs semaines, et j'ai corrigé un certain nombre de bugs depuis lors - en redémarrant le serveur chaque fois que j'y ai poussé mes modifications ... – someone2088

Répondre

0

maintenant pour votre repo local, le statut git dit:

On branch master 
Your branch is up-to-date with 'origin/master'. 
nothing to commit, working tree clean 

Ensuite, vous pouvez extraire de repo à distance par git fetch origin et utiliser git status pour montrer la branche maître local. Si elle indique,

On branch master 
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded. 
    (use "git pull" to update your local branch) 
nothing to commit, working tree clean 

cela signifie que votre branche principale locale n'est pas la version la plus récente. Si vous voulez que la version en direct (branche principale distante) reste la même avec la branche principale locale, vous pouvez utiliser git push -f origin master.