git:隐藏/删除永远不会被版本化的文件

时间:2009-08-08 12:59:30

标签: git tortoisegit

我正在尝试使用git和tortoise-git。

有没有办法隐藏永远不会被完全跟踪的文件?目前,当我提交更改时,所有临时构建文件与新文件位于相同的“未版本化”列表中。

5 个答案:

答案 0 :(得分:24)

在根文件夹中创建一个名为.gitignore的文本文件,并添加如下所示的行以排除文件:

*.obj
test.c

然后将.gitignore添加到您的git存储库并提交:

$ git add .gitignore
$ git commit .gitignore

答案 1 :(得分:11)

您需要调查.gitignore个文件。

git help gitignore

答案 2 :(得分:8)

TortoiseGit可以使用许多选项将文件添加到忽略列表中。

右键单击 - > TortoiseGit - >添加到忽略列表 - >按文件名/扩展名

显示一个对话框以选择选项:

忽略类型

仅此文件(匹配绝对名称),

递归(匹配同名)

忽略文件

root目录中的

.gitignore(需要提交)

包含目录中的

.gitignore(需要提交)

.git/info/exclude(就像配置文件一样,存储在本地)

答案 3 :(得分:5)

如果您已将文件添加到存储库,但需要删除/忽略它们。请按照以下步骤操作:

  1. 将这些文件移出存储库。
  2. 进行提交,这将从存储库中删除这些文件
  3. 将这些文件移回存储库到
  4. 的位置
  5. 进行提交,但现在不是将这些文件添加到存储库,而是右键单击这些文件。选择“添加到忽略列表” - >“按文件名”。您添加这些.gitignore的选项无关紧要,但您可以在互联网上查找差异。

答案 4 :(得分:5)

由于<div class="container"> <h1>Welcome to Hacker News Clone</h1> <h3>All posts</h3> <ul> <% @posts.each_with_index do |post, index| %> <li id="post<%= post.id %>"> <a href="/posts/<%= post.id %>"><%= post.post_desc %> </a> <br/> <span> <%= @post_votes[index] %> points </span> by <a href="/users/<%= post.user.id %>"><%= post.user.username %></a> | <%= post.comments.count %> comments <br/> <button <%= "disabled" if post.posts_votes.find_by(user_id: session[:id]) && post.posts_votes.find_by_user_id(session[:id]).vote == 1 %> class="upvote" data-post-id="<%= post.id %>" width="40px" height="40px">Upvote</button> <button <%= "disabled" if post.posts_votes.find_by(user_id: session[:id]) && post.posts_votes.find_by_user_id(session[:id]).vote == -1 %> class="downvote" data-post-id="<%= post.id %>" width="40px" height="40px">Downvote</button> </li> <br/> <% end %> </ul> </div> <script> $(document).ready(function() { // Check if any post-vote combination for that user already exists and change upvote/downvote button to disabled $(".upvote").on("click", function(event) { event.preventDefault(); var postId = $(this).data("post-id"); var url = "/posts/" + postId + "/vote" $.ajax({ type: "POST", url: url, data: {"post_id": postId, "vote": 1}, dataType: "json" }).done(function(response){ debugger $("#post" + response["post_id"] + " span").text(response["votes"] + " points"); $("#post" + response["post_id"] + " button" + ".upvote").attr("disabled", "disabled") }); }); $(".downvote").on("click", function(event) { event.preventDefault(); var postId = $(this).data("post-id"); var url = "/posts/" + postId + "/vote" $.ajax({ type: "POST", url: url, data: {"post_id": postId, "vote": -1}, dataType: "json" }).done(function(response){ $("#post" + response["post_id"] + " span").text(response["votes"] + " points"); $("#post" + response["post_id"] + " button" + ".downvote").attr("disabled", "disabled") }); }); }); </script> 的一个好处是使用用户界面,特别是如果您使用了其他产品,例如TortoiseGitTortoiseSVN,以下是一些实现此目的的UI方法: / p>

文件尚未添加

将文件添加到TortoiseHg排除项的简单方法是,当您通过Tortoise .gitignore选择要暂存的文件时 - Tortoise会列出所有未被忽略的文件。 ; t当前位于提交屏幕底部git commit框下的回购中:

Adding file exclusions to .gitignore during commit

错误添加了不需要的文件

如果您已经提交或推送了不受欢迎的文件,则在Not Versioned Files的较新版本(大约1.8.14版本)中另一种方法是从您的repo分支中删除现有文件并将其添加到其中一个TortoiseGit隐藏在鼠标右键功能.gitignore

Removing versioned file from Repo and adding to GitIgnore

然后,您有几个Delete and add to ignore list选项可以选择是仅添加此文件还是通配符匹配,以及将.gitignore添加到哪个 - 本地文件夹,repo root或您的`。 GIT中/信息/排除&#39;

但是,在最后一刻,您有机会保留文件的本地副本:

Deleted From Repo But Kept Locally