| 
    
            
         
         | 
    
  | 
Как переместить файлы внутри гит репозитория через GUI, сохраняя их историю? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    08:01 
 | 
         
        Как переместить файлы и папки внутри гит репозитория https://i.imgur.com/4Hukeex.png , сохраняя их историю? В каких гит клиентах это можно сделать?
 
        Тут https://stackoverflow.com/questions/10915858/where-is-git-mv-in-sourcetree пишут, что в SourceTree в меню "Действия" есть команда "Переместить". Но я ее там не вижу https://i.imgur.com/NhoBbWm.png Если я их просто перемещу в файловой системе, то сохранится ли история? Как я понимаю, нет.  | 
|||
| 
    1
    
        Вафель    
     17.09.21 
            ✎
    08:02 
 | 
         
        Обычно гит понимает что файл перемещен     
         | 
|||
| 
    2
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    08:05 
 | 
         
        (1) Да, че то такое читал, но там используются эвристические алгоритмы для понимания этого, а значит нет гарантии.
 
        У консольного гита есть команда "move", которая вроде делает это надежно. Но я не нашел ее в GUI клиентах.  | 
|||
| 
    3
    
        ДенисЧ    
     17.09.21 
            ✎
    08:10 
 | 
         
        Черепашка запросто умеет.
 
        Только в русском варианте (что у меня) это не переместить, а переименовать.  | 
|||
| 
    4
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    08:22 
 | 
         
        (3) А слоник умеет?     
         | 
|||
| 
    5
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    08:22 
 | 
         
        Я видимо не в теме. Где прочитать про жаргонные обозначения всех гит клиентов?     
         | 
|||
| 
    6
    
        ДенисЧ    
     17.09.21 
            ✎
    08:24 
 | 
         
        (5) TortoiseGIT - как на русский перевести?     
         | 
|||
| 
    7
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    08:28 
 | 
         
        (6) Ну я же не переводил SourceTree на русский, как и авторы локализации на моей картинке. Жаргонные обозначения использовать тогда, когда есть высокая уверенность, что читатель их знает.
 
        Можешь сделать картинку?  | 
|||
| 
    8
    
        ДенисЧ    
     17.09.21 
            ✎
    08:32 
 | 
||||
| 
    9
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    09:04 
 | 
         
        Набрался смелости и переместил в файловой системе. Вроде бы все файлы при отправке коммита он связал со старыми (обнаружил перемещение).
 
        https://i.imgur.com/RqaDVeA.png Но теперь у меня для всех модулей перестала отображаться всплывающая подсказка по изменениям строки модуля https://i.imgur.com/jHLRrJq.png А вот как это было https://i.imgur.com/w5XTf57.png  | 
|||
| 
    10
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    09:05 
 | 
         
        (9) Перестала отображаться подсказка в Visual Studio Code с расширением GitCodeLens.     
         | 
|||
| 
    11
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    09:11 
 | 
         
        (10) ОШибка. Расширение называется GitLens, а не GitCodeLens     
         | 
|||
| 
    12
    
        Вафель    
     17.09.21 
            ✎
    09:36 
 | 
         
        (10) git blame то работает?     
         | 
|||
| 
    13
    
        TormozIT    
     гуру 
    17.09.21 
            ✎
    09:37 
 | 
         
        (12) только GUI умею. Вроде в заголовке написано.     
         | 
|||
| 
    14
    
        Вафель    
     17.09.21 
            ✎
    09:42 
 | 
         
        (13) ну так учись     
         | 
|||
| 
    15
    
        fisher    
     17.09.21 
            ✎
    10:12 
 | 
         
        Пишут что есть два основных способа:
 
        1. git mv 2. Можно переместить и мимо гита, но в гите это потом надо оформить как git add <куда> и git rm <откуда> Соответственно в гуе скорее всего должна быть гуевая опция перемещения, которая под капотом сделает git mv Но раз ты уже сделал это мимо гуя, то попробуй сделать git rm <откуда>. Думаю, что git add <куда> гуй уже сделал сам.  | 
|||
| 
    16
    
        fisher    
     17.09.21 
            ✎
    10:24 
 | 
         
        Короче, народ пишет что это боль. git не отслеживает переименования/переносы в части сохранения сквозной истории. И Линус отвечал в том духе что "и не должно, идите нахрен".
 
        Якобы использование опции --follow для git log может догадаться показать общую историю, но т.к. оно работает через костыли, то соответственно работает не всегда.  | 
|||
| 
    17
    
        fisher    
     17.09.21 
            ✎
    10:26 
 | 
         
        Так что скорее всего твой гуй отработал как мог, но сквозная история не подтягивается потому что а кому сейчас легко     
         | 
|||
| 
    18
    
        fisher    
     17.09.21 
            ✎
    10:39 
 | 
         
        --follow
 
        Continue listing the history of a file beyond renames (works only for a single file) Если гуй развесистый, то можно попробовать поискать где-то соответствующую "птичку".  | 
|||
| 
    19
    
        TormozIT    
     гуру 
    20.09.21 
            ✎
    08:27 
 | 
         
        (10) Описал способ обхода проблемы тут Перестала отображаться информация о комитте в Visual Studio Code с расширением GitLens     
         | 
|||
| 
    20
    
        fisher    
     20.09.21 
            ✎
    09:39 
 | 
         
        (19) Вероятно, "Open line changes with previous version" в GUI это и есть аналог вызова git log --follow в CLI     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |