SourceTree - 希望每次都被Origin覆盖的本地更改文件

时间:2017-06-06 17:47:55

标签: git gitignore atlassian-sourcetree pull

当我在本地存储库中进行构建时,有一个源代码控制中的本地文件会不断更改。每次我从原点进行拉取时,我都会收到以下错误消息:

git -c diff.mnemonicprefix=false -c core.quotepath=false -c 
credential.helper=manager-st fetch origin

git -c diff.mnemonicprefix=false -c core.quotepath=false -c 
credential.helper=manager-st pull origin integration
From https://bitbucket.org/****/**********-services
 * branch              integration -> FETCH_HEAD

Updating 920927c3..ec112c49
error: Your local changes to the following files would be overwritten by merge:
    tsconfig.json
Please commit your changes or stash them before you merge.
Aborting

Completed with errors, see above.

我通过取消拉动来修复此问题,然后转到“文件状态”选项卡并右键单击有问题的文件并选择“放弃”。然后,我可以做没有问题的拉。

现在可能有一个很好的例子,即有问题的文件tsconfig.json永远不应该被检入git仓库中。但是,因为我在其他存储库中看到这一点,我不确定特定文件是否应该存在,我想知道的是,如果有一种方法可以在执行拉取时始终丢弃本地文件。

我已经调查过的两个选项是右键单击该文件并选择“Stop Tracking”但我的理解是,当我执行推送时,这实际上会从父存储库中的源代码控制中删除该文件。我不想这样做。

另一个选择是将文件路径添加到.gitignore文件中,但我的理解是,它意味着源存储库中的同一文件不会覆盖我的文件,这是我想要它做的。

所以要么我误解了Stop Tracking或.gitignore是如何工作的,要么我希望我还没有找到第三个选项。

0 个答案:

没有答案