Skip to content
Snippets Groups Projects
Select Git revision
  • v1.0rc3
  • passt default
  • master
  • pu
  • todo
  • next
  • maint
  • v2.8.0-rc1
  • v2.8.0-rc0
  • v2.7.2
  • v2.7.1
  • v2.7.0
  • v2.6.5
  • v2.7.0-rc3
  • v2.7.0-rc2
  • v2.7.0-rc1
  • v2.7.0-rc0
  • v2.6.4
  • v2.6.3
  • v2.6.2
  • v2.6.1
  • v2.3.10
  • v2.5.4
  • v2.4.10
  • v2.6.0
  • v2.6.0-rc3
  • v2.5.3
27 results

git-cherry.sh

Blame
    • Junio C Hamano's avatar
      215a7ad1
      Big tool rename. · 215a7ad1
      Junio C Hamano authored
      
      As promised, this is the "big tool rename" patch.  The primary differences
      since 0.99.6 are:
      
        (1) git-*-script are no more.  The commands installed do not
            have any such suffix so users do not have to remember if
            something is implemented as a shell script or not.
      
        (2) Many command names with 'cache' in them are renamed with
            'index' if that is what they mean.
      
      There are backward compatibility symblic links so that you and
      Porcelains can keep using the old names, but the backward
      compatibility support  is expected to be removed in the near
      future.
      
      Signed-off-by: default avatarJunio C Hamano <junkio@cox.net>
      215a7ad1
      History
      Big tool rename.
      Junio C Hamano authored
      
      As promised, this is the "big tool rename" patch.  The primary differences
      since 0.99.6 are:
      
        (1) git-*-script are no more.  The commands installed do not
            have any such suffix so users do not have to remember if
            something is implemented as a shell script or not.
      
        (2) Many command names with 'cache' in them are renamed with
            'index' if that is what they mean.
      
      There are backward compatibility symblic links so that you and
      Porcelains can keep using the old names, but the backward
      compatibility support  is expected to be removed in the near
      future.
      
      Signed-off-by: default avatarJunio C Hamano <junkio@cox.net>
    cache-tree.h 1.63 KiB
    #ifndef CACHE_TREE_H
    #define CACHE_TREE_H
    
    #include "tree.h"
    #include "tree-walk.h"
    
    struct cache_tree;
    struct cache_tree_sub {
    	struct cache_tree *cache_tree;
    	int count;		/* internally used by update_one() */
    	int namelen;
    	int used;
    	char name[FLEX_ARRAY];
    };
    
    struct cache_tree {
    	int entry_count; /* negative means "invalid" */
    	unsigned char sha1[20];
    	int subtree_nr;
    	int subtree_alloc;
    	struct cache_tree_sub **down;
    };
    
    struct cache_tree *cache_tree(void);
    void cache_tree_free(struct cache_tree **);
    void cache_tree_invalidate_path(struct index_state *, const char *);
    struct cache_tree_sub *cache_tree_sub(struct cache_tree *, const char *);
    
    void cache_tree_write(struct strbuf *, struct cache_tree *root);
    struct cache_tree *cache_tree_read(const char *buffer, unsigned long size);
    
    int cache_tree_fully_valid(struct cache_tree *);
    int cache_tree_update(struct index_state *, int);
    
    int update_main_cache_tree(int);
    
    /* bitmasks to write_cache_as_tree flags */
    #define WRITE_TREE_MISSING_OK 1
    #define WRITE_TREE_IGNORE_CACHE_TREE 2
    #define WRITE_TREE_DRY_RUN 4
    #define WRITE_TREE_SILENT 8
    #define WRITE_TREE_REPAIR 16
    
    /* error return codes */
    #define WRITE_TREE_UNREADABLE_INDEX (-1)
    #define WRITE_TREE_UNMERGED_INDEX (-2)
    #define WRITE_TREE_PREFIX_ERROR (-3)
    
    int write_index_as_tree(unsigned char *sha1, struct index_state *index_state, const char *index_path, int flags, const char *prefix);
    int write_cache_as_tree(unsigned char *sha1, int flags, const char *prefix);
    void prime_cache_tree(struct index_state *, struct tree *);
    
    extern int cache_tree_matches_traversal(struct cache_tree *, struct name_entry *ent, struct traverse_info *info);
    
    #endif