Since the decomposition of tensor products has a complicated history, it's worth adding some comments to ARupinski's answer. 1) Though Weyl's character formula is fundamental for finite dimensional representation theory, it doesn't lead immediately to a method for decomposing tensor products. However, Steinberg derived in 1961 such an elegant method (which however involves an impractical double summation over the Weyl group) <a href="http://www.ams.org/journals/bull/1961-67-04/S0002-9904-1961-10644-7/home.html">here</a>. 2) As early as 1937, Brauer wrote down the explicit recipe referred to here (and often in the applied literature directed toward physicists) as Klimyk's rule: this was a short article in C.R. Acad. Sci. Paris 204, more easily located in Brauer's collected papers. The selling point of this rule is that it requires only the knowledge of one highest weight along with the full character of the second module (given for example by Weyl or by Kostant's equivalent later method). These matters are discussed in Section 24 of my 1972 Springer graduate text, where a proof of Brauer's formula is formulated in the exercises. 3) Klimyk's early work appeared around 1967 in Russian, with an English translation soon after in an AMS volume: MR0237712 (38 #5993) 22.60, Klimyk, A.U. Multiplicities of weights of representations and multiplicities of representations of semisimple Lie algebras. (Russian) Dokl. Akad. Nauk SSSR 177 (1967) 1001–1004. 4) It's important to realize that Klimyk's work has involved not just tensor products of finite dimensional representations, but also tensor products in which one factor is allowed to be infinite dimensional of various special types. This is part of a much broader program for Lie group representations involving Kostant and others. 5) From a purely computational point of view, getting explicit results for type $G_2$ is not at all easy because dimensions grow so fast. There used to be some explicit printed tables, which always stop when the going gets tough. The older methods of Brauer and Klimyk are anyway inherently inefficient, requiring a huge amount of cancellation as indicated by ARupinski. Combinatorists have found Littelmann's approach (generalizing Littlewood-Richardson for type A) more appealing, but I'm unaware of literature illustrating the method explicitly for type $G_2$. 6) It's also worth mentioning that interesting special features of tensor products have been studied using algebraic geometry by Kumar and others in response to the old "PRV Conjecture", but here the concern is about the occurrence of specific summands in a tensor product decomposition and not the entire picture.