1. Stefan Saasen
  2. git

Commits

Josh Triplett  committed 9d6f220

Remove useless uses of cat, and replace with filename arguments

Replace uses of cat that do nothing but writing the contents of
a single file to another command via pipe.

[jc: Original patch from Josh was somewhat buggy and rewrote
"cat $file | wc -l" to "wc -l $file", but this one should be Ok.]

Signed-off-by: Junio C Hamano <gitster@pobox.com>

  • Participants
  • Parent commits bdecd9d
  • Branches master

Comments (0)

Files changed (4)

File git-commit.sh

View file
  • Ignore whitespace
 		tree=$(GIT_INDEX_FILE="$TMP_INDEX" git write-tree) &&
 		rm -f "$TMP_INDEX"
 	fi &&
-	commit=$(cat "$GIT_DIR"/COMMIT_MSG | git commit-tree $tree $PARENTS) &&
+	commit=$(git commit-tree $tree $PARENTS <"$GIT_DIR/COMMIT_MSG") &&
 	rlogm=$(sed -e 1q "$GIT_DIR"/COMMIT_MSG) &&
 	git update-ref -m "$GIT_REFLOG_ACTION: $rlogm" HEAD $commit "$current" &&
 	rm -f -- "$GIT_DIR/MERGE_HEAD" "$GIT_DIR/MERGE_MSG" &&

File git-filter-branch.sh

View file
  • Ignore whitespace
 	git rev-list --reverse --topo-order --default HEAD \
 		--parents --full-history "$@" -- "$filter_subdir"
 esac > ../revs
-commits=$(cat ../revs | wc -l | tr -d " ")
+commits=$(wc -l <../revs | tr -d " ")
 
 test $commits -eq 0 && die "Found nothing to rewrite"
 
 	;;
 *)
 	git update-ref refs/heads/"$dstbranch" $target_head
-	if [ $(cat ../map/$src_head | wc -l) -gt 1 ]; then
+	if [ $(wc -l <../map/$src_head) -gt 1 ]; then
 		echo "WARNING: Your commit filter caused the head commit to expand to several rewritten commits. Only the first such commit was recorded as the current $dstbranch head but you will need to resolve the situation now (probably by manually merging the other commits). These are all the commits:" >&2
 		sed 's/^/	/' ../map/$src_head >&2
 		ret=1

File git-ls-remote.sh

View file
  • Ignore whitespace
 	(cd $tmpdir && find refs -type f) |
 	while read path
 	do
-		cat "$tmpdir/$path" | tr -d '\012'
+		tr -d '\012' <"$tmpdir/$path"
 		echo "	$path"
 	done &&
 	rm -fr $tmpdir

File git-quiltimport.sh

View file
  • Ignore whitespace
 commit=$(git rev-parse HEAD)
 
 mkdir $tmp_dir || exit 2
-for patch_name in $(cat "$QUILT_PATCHES/series" | grep -v '^#'); do
+for patch_name in $(grep -v '^#' < "$QUILT_PATCHES/series" ); do
 	echo $patch_name
-	(cat $QUILT_PATCHES/$patch_name | git mailinfo "$tmp_msg" "$tmp_patch" > "$tmp_info") || exit 3
-	test -s .dotest/patch || {
+	git mailinfo "$tmp_msg" "$tmp_patch" \
+		<"$QUILT_PATCHES/$patch_name" >"$tmp_info" || exit 3
+	test -s "$tmp_patch" || {
 		echo "Patch is empty.  Was it split wrong?"
 		exit 1
 	}