#!/usr/bin/env bash # # List contents of a particular tree in a GIT repository. # Copyright (c) Petr Baudis, 2005 # # Optionally takes a commit or tree ID as a parameter, defaulting to # 'HEAD'. # # OPTIONS # ------- # -t TREE_ID:: List content of the given TREE_ID # List the content of the given TREE_ID. # # OUTPUT FORMAT # ------------- # Each line in the output has the following format: # # # # where # # :: # The file permission information in octal format. # # :: # The type can be the following: `blob` refers to files # and `tree` refers to directories. # # :: # The object ID. # # :: # The file or directory name. # # Example line: # # 100644 blob c7dacd0ea28994e3c754ca4eadb2e08c011ee3d3 README USAGE="cg-admin-ls [-t TREE_ID] [PATH]" . "${COGITO_LIB}"cg-Xlib || exit 1 tree_id= while optparse; do if optparse -t=; then tree_id="$OPTARG" else optfail fi done id="$(cg-object-id -t "$tree_id")" || exit 1 git-ls-tree "$id" "${ARGS[@]}"