git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: how to revert changes in working tree?

From
LYLiu Yubao <yubao.liu@gmail.com>
Date
Dec 6, 2006, 09:57 UTC
Message-ID
<45769417.70601@gmail.com>
In-Reply-To
<81b0412b0612060043t488d356du8f5fcdd164a45eb5@mail.gmail.com>
Alex Riesen wrote:
Show 8 quoted lines
> On 12/6/06, Liu Yubao <yubao.liu@gmail.com> wrote:
>> I'm confused how to revert changes in working tree:
>>
>> $ git fetch
>> $ git merge "sync with origin" HEAD origin
>> ....conflict....
> 
> You may want to consider git pull. It'd do exactly the same

It's said somewhere "git pull" has strange behaviour and fetch+pull is recommended.

Show 8 quoted lines
> 
>> $ git branch
>> * master
>>   origin
>>
>> $ git status
>> # .....: needs update
>> # .....: needs update

sorry, I made a mistake, that should come from "git merge", here is the message from "git status": # Changed but not updated: # (use git-update-index to mark for commit) # # modified: include/linux/netfilter/xt_CONNMARK.h # modified: include/linux/netfilter/xt_DSCP.h # modified: include/linux/netfilter/xt_MARK.h # modified: include/linux/netfilter_ipv4/ipt_CONNMARK.h # modified: include/linux/netfilter_ipv4/ipt_DSCP.h # modified: include/linux/netfilter_ipv4/ipt_ECN.h # modified: include/linux/netfilter_ipv4/ipt_MARK.h # modified: include/linux/netfilter_ipv4/ipt_TCPMSS.h # modified: include/linux/netfilter_ipv4/ipt_TOS.h # modified: include/linux/netfilter_ipv4/ipt_TTL.h # modified: include/linux/netfilter_ipv6/ip6t_HL.h # modified: include/linux/netfilter_ipv6/ip6t_MARK.h # modified: net/ipv4/netfilter/ipt_ECN.c # modified: net/ipv4/netfilter/ipt_TOS.c # modified: net/ipv4/netfilter/ipt_TTL.c # modified: net/ipv6/netfilter/ip6t_HL.c # modified: net/netfilter/xt_CONNMARK.c # modified: net/netfilter/xt_DSCP.c # modified: net/netfilter/xt_MARK.c # nothing to commit

Show 5 quoted lines
>> (In fact I never modified anything in this tree, and "git diff"
>> showed many difference indeed, very strange).
> 
> That's windows and cygwin for you. They work together
> and may someday even figure how to commit the changes.
Yes, I am using cygwin :-(
Show 8 quoted lines
> 
> They problem is the exec-bit which windows does not
> have and cygwin failed to correctly workaround the
> limitation.
> 
> Do a "git repo-config core.filemode false" to almost
> disable the checks for exec bit.
> 

It has been set. I guess the cause is a interrupted merge operation that leads to textual difference.

Show 18 quoted lines
>> I tried "git update-index --refresh", "git reset --hard",
>> "git reset --hard master", "git checkout master",
>> "git checkout -f master", but "git status" still said same
>> as above.
> 
> After git update-index --refresh you shouldn't have had
> the diffs (unless you actually had textual changes).
> 
>> At last, I deleted all files that were reported to be updated
>> with "rm -rf", ran "git checkout master" and "git status", then
>> git reported:
>> #       deleted:    ....
>> #       deleted:    ....
> 
> Now do a git reset --hard and you should be set,
> unless you're unlucky enough to work on FAT,
> where probably nothing will save you.
> 

After run "git reset --hard", all deleted files come back, but I reach the old state: $ git status # Changed but not updated: # (use git-update-index to mark for commit) # # modified: include/linux/netfilter/xt_CONNMARK.h # modified: include/linux/netfilter/xt_DSCP.h ... # modified: net/netfilter/xt_MARK.c # nothing to commit

Show 5 quoted lines
> And avoid using any "special" characters (8bit, utf/unicode)
> in filenames, while you're on windows: you'll never be able
> to share the repository (unless others agree to use your
> rules for language and filesystem encoding).
> 
In fact, I'm operating the linux-2.6 tree, so no special characters.
HEAD: commit 088406bcf66d6c7fd8a5c04c00aa410ae9077403
master: commit 088406bcf66d6c7fd8a5c04c00aa410ae9077403
origin: commit ff51a98799931256b555446b2f5675db08de6229
"git diff --cached" shows nothing;
"git diff" shows many diffs:
diff --git a/include/linux/netfilter/xt_CONNMARK.h b/include/linux/netfilter/xt_CONNMARK.h
index 9f74468..c592f6a 100644
--- a/include/linux/netfilter/xt_CONNMARK.h
+++ b/include/linux/netfilter/xt_CONNMARK.h
@@ -1,5 +1,5 @@
-#ifndef _XT_CONNMARK_H_target
-#define _XT_CONNMARK_H_target
+#ifndef _XT_CONNMARK_H
+#define _XT_CONNMARK_H

 /* Copyright (C) 2002,2004 MARA Systems AB <http://www.marasystems.com>
  * by Henrik Nordstrom <hno@marasystems.com>
@@ -10,16 +10,9 @@
  * (at your option) any later version.
  */

-enum {
-       XT_CONNMARK_SET = 0,
-       XT_CONNMARK_SAVE,
-       XT_CONNMARK_RESTORE
+struct xt_connmark_info {
+       unsigned long mark, mask;
+       u_int8_t invert;
 };
.....
Previous: Alex RiesenNext: Alex Riesen
Message 3 of 11 in “how to revert changes in working tree?”
  1. Liu YubaoDec 6, 2006
  2. Alex RiesenDec 6, 2006
  3. Liu YubaoDec 6, 2006
  4. Alex RiesenDec 6, 2006
  5. Liu YubaoDec 6, 2006
  6. Alex RiesenDec 6, 2006
  7. Jakub NarebskiDec 6, 2006
  8. Shawn PearceDec 6, 2006
  9. Liu YubaoDec 7, 2006
  10. Juergen RuehleDec 7, 2006
  11. Jakub NarebskiDec 6, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.